complete main structure