allow contracts to preempt our type handling