structs2 framwork