first class constraints