split policy and behavior