Added some requirements to defintion