generate basic structure