first basic structure and things...