custom resolver for put