main structure complete