add tests for nested types
almost nested types support