support customized struct inside a map
add nested struct test case