allowing custom types on rules