introduced main structure