basic structure outline