working out basic structure