allow dictionary to be passed in as metadata properly