more work on casting