constraints done