got the base structure. Now explainations need to be written