un-deprecated defaultPolicy. Still TODO, don't need separate domain class, just make each State class implement the interface