This is adapted from an old module so may not be wholly relevant. You WILL need to know it all in the long run, so have a go