do not use before_type_cast readers cause that does not work well with enums