validator now copies body to params