fixed the marshaler not iterating through all potential key paths