work on casting constrains