struct and openstruct