start to implement OneStruct