first 2 requirements working of assignment