marshalling with array