AbstractedPolicy (not complete)
Part of previous commit