BLENDER-v258REND SceneTESThPY ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` `@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` `GLOB  181FUY /home/bassam/projects/hamp/tube/tests/auto_walker.blendWM($RYjWMWinMan%RY%RY%RY%RY(dYaE{EX$X(XRYXRYXRYXRYxExExEDATA%RYk0<X81Fscreencf$XE;YEEEh.6L,6L-6L-6LhbYE;YSN(E1FSRAnimation.001kEE(RYEhE1FUYDATA kE8aYDATA 8aYJEkEaDATA JEhBE8aYvaDATA hBEO(XJEvDATA O(X=pYhBEFDATA =pY8UYO(XvFDATA 8UYVY=pY,DATA VYJF8UY,FDATA JF(EVY,DATA (EGEJFvDATA GEdRY(EDATA dRYɹEGE,DATA ɹEzEdRYDATA zEEɹEFDATA E~EzEDATA ~ERDEDATA RDE~E,dDATA ERDvdDATA((RY؎EJE8aYDATA(؎EmE(RYO(X8aYDATA(mEE؎EJE=pYDATA(EEmEO(X=pYDATA(EEEkE8UYDATA(E(vDEhBE8UYDATA((vDEEVY=pYDATA(ED(vDJF8UYDATA(DFDEhBE(EDATA(FD؎ED(EJFDATA(؎EELFDGEkEDATA(EL80F؎EdRYVYDATA(80FEELdRY8UYDATA(EE80FGEdRYDATA(EHEEɹEGEDATA(HEEEɹEdRYDATA(E(EHEzEO(XDATA((EEEzEVYDATA(EE(EɹEzEDATA(ExEEEGEDATA(xEEEɹE~EDATA(EXExEE~EDATA(XEEERDJFDATA(E8EXERDVYDATA(8EEEE=pYDATA(EE8E(EEDATA(EEERDEDATA(EEEEO(XDATA(EEzE~EDATAhE(EO(X8aYJE=pYvGaw1F1FXE'EDATA(XE'E DADAvDADA??  wwvG`wDATA('EXEmEmEpoo?? paaDATA(EAEhE8UYJF(EhBE-vJH@EH@E)EX+EDATA()EX+ECACAICACA??  JJ-vJDATA(X+E)ECVC9J>8?@ J9-vJ,E>EDATAX,Eh.EBUTTONS_PT_contextBUTTONS_PT_contextContext9$DATAXh.E0E,ERENDER_PT_renderRENDER_PT_renderRender9=DATAX0E1Eh.ERENDER_PT_layersRENDER_PT_layersLayerso9DATAX1EH3E0ERENDER_PT_dimensionsRENDER_PT_dimensionsDimensions9DATAXH3E4E1ERENDER_PT_antialiasingRENDER_PT_antialiasingAnti-Aliasing:9:DATAX4E6EH3ERENDER_PT_motion_blurRENDER_PT_motion_blurFull Sample Motion Blur"9DATAX6E(8E4ERENDER_PT_shadingRENDER_PT_shadingShading9fDATAX(8E9E6ERENDER_PT_outputRENDER_PT_outputOutput 9DATAX9Eh;E(8ERENDER_PT_performanceRENDER_PT_performancePerformance9DATAXh;E=E9ERENDER_PT_post_processingRENDER_PT_post_processingPost Processing9 DATAX=E>Eh;ERENDER_PT_stampRENDER_PT_stampStamp9 DATAX>E=ERENDER_PT_bakeRENDER_PT_bakeBake9 DATAH@EDATAAEXEE(EkEGEdRY8UY+,EExBECEDATA(xBECEDADA+DADA??  ,,+,DATA(CExBE@~CHBpF}CHB++i?HB|HHB= AH,j+,jDATAEDATAXEEKEAEJFRDE(E-vcJ(IE(IEHFEGEDATA(HFEGECACAIBCABCA??  JJ-vJcJDATA(GEHFECC9Jl88l??Jm9[-vIJmDATA(IEQEDATAQEJEDATAJEUYUYUYUYأUYDEUYUYDATAKEYEXEEɹEzEVYdRY+EWEWELEhREDATA(LENEuDAbDADADA??  +DATA(NEOELEC@FCF++?@ ,EDATA(OEPENECfCww?@ xf+"DATA(PEhREOE#C`#C`?@ ++EDATA(hREPE+ESEDATA`SEkR?? JLD>3;Q?Fwi?JF>#,TY!e?*=>o?E>Fwi?TY5;JF>!e?Q?#,+=>`DAoy@?Y>0QQA?X>?>#,>& uϜz?T*= lAoA0> O?@fK5>}Q?h3kuQA(ˆy>rB^B@D>3;Q?Fwi?JF>#,TY!e?*=>o?Y>0QQA?X>?>#,>& uϜz?T*= lAoAc @c @c @?\>7?8˔oAoA+;?! BUBt~BDATA8WE333?? ADE B?=C DATAYEH1FKEGEE~EɹEX1FX1FYEH^EDATA(YEh[EdDA(DAgDAgDA??  DATA(h[E\EYEHCpHC[?? DATA(\EH^Eh[EDATA(H^E\EC@zC Ao:o:|HPCGiDATAX1F1FDATAh1FUYDATAH1F1FYEEO(XzE~EE 1F1F81F1FDATA(81F1FjDA(DAgDAgDA??  DATA(1F1F81F7CHC@#??EDATA(1F1F hD hD@#|H@F #<HBJEDATA@1F UYDATA1FH1FRDVY=pYE-veEJ1F1F1Fx1FDATA(1Fx1FfDAC@AICACA?? JJ-veeDATA(x1F1F-veEJ1FDATA`1F @BP@AHMݕ/?U~'?3F:?>T8165e?2>Z& 4?ߕ/?7F:?81W~>85e?'?T2>ne@>M@??"1''?|&??T?ļ*w:@l2R@朿11A 4AF>>Ο;ǽ=ߌ>3x‘B ֟&BŭeA(@ݕ/?U~'?3F:?>T8165e?2>Z& 4??"1''?|&??T?ļ*w:@l2R@朿11A 4AH?N,Z# A3;??DATA81F333?? ADE B? #<C SN1F81F(ESRCompositingg.0011Fx1F1F1F1FؐEUYDATA 1F81FDATA 81F1F1FaDATA 1F1F81FvaDATA 1F1F1FvDATA 1F1F1FFDATA 1Fh1F1FvFDATA h1F1F1FdDATA 1FH1Fh1FvdDATA H1F1F1FFDATA 1F(1FH1FDATA (1F1F1FDATA 1F1F(1FDATA 1Fx1F1FDATA x1F1FDATA(1FX1F81F1FDATA(X1F1F1F81F1FDATA(1F81FX1F1F1FDATA(81F1F1F1F1FDATA(1F1F81F1F1FDATA(1F1F1Fh1F1FDATA(1F1F1F1FH1FDATA(1Fh1F1F1FH1FDATA(h1F1F1Fh1FH1FDATA(1FH1Fh1F1F1FDATA(H1F1F1F1F1FDATA(1F(1FH1FH1F(1FDATA((1F1F1F1F(1FDATA(1F1F(1F1F1FDATA(1Fx1F1F(1F1FDATA(x1F1F1F1F1FDATA(1FX1Fx1F1Fx1FDATA(X1F1F1F1Fx1FDATA(1F81FX1Fh1Fx1FDATA(81F1F1F1F1FDATA(1F1F81F(1Fx1FDATA(1F1F1F1FDATA1FX1F1F81F1F1FvGaw&RY&RYx1F1FDATA(x1F1F DADAvDADA??  wwvG`wDATA(1Fx1FmEmEpoo?? paaDATAX1FH1F1Fx1Fh1F1F1Fvc^d(1F(1FH1F1FDATA(H1F1FnDAC@(DA]DADA??  ^^v^DATA(1FH1F@~CHB23JуCHB]]I?HB|HHB= AH^Jvc^JDATA(1FDATAH1F8~EX1Fh1FH1F1F1FveE^|E|E81F1FDATA(81F1FCACA]CACA??  ^^v'E^DATA(1F81FC@pCpM^RL?@ ^Mve&^1FX{EDATAX1F1FBUTTONS_PT_contextBUTTONS_PT_contextContextL$DATAX1FX1F1FRENDER_PT_renderRENDER_PT_renderRenderL=DATAXX1F1F1FRENDER_PT_layersRENDER_PT_layersLayersoLDATAX1F1FX1FRENDER_PT_dimensionsRENDER_PT_dimensionsDimensionsLDATAX1FqE1FRENDER_PT_antialiasingRENDER_PT_antialiasingAnti-Aliasing:L:DATAXqE8sE1FRENDER_PT_motion_blurRENDER_PT_motion_blurFull Sample Motion Blur"LDATAX8sEtEqERENDER_PT_shadingRENDER_PT_shadingShadingLfDATAXtExvE8sERENDER_PT_outputRENDER_PT_outputOutput LDATAXxvExEtERENDER_PT_performanceRENDER_PT_performancePerformanceLDATAXxEyExvERENDER_PT_post_processingRENDER_PT_post_processingPost ProcessingL DATAXyEX{ExERENDER_PT_stampRENDER_PT_stampStampL DATAXX{EyERENDER_PT_bakeRENDER_PT_bakeBakeL DATA|EDATA8~EEH1F1F1F(1Fx1FEE(E脸EDATA((EEfDAEDADADA??  DATA(EE(EC@FCF++?@ ,DATA(ExEECfCww?@ xf"DATA(xE脸EE#Cl#C?@ pDATA(脸ExEXEDATA`XE$e?vb@AHMݕ/?U~'?3F:?>T8165e?2>Z& 4?ߕ/?7F:?81W~>85e?'?T2>ne@>M@??\''???T?~J@l2'Ū11A 4A> >Ļ˄==n>x3xB ֟&BĭeA(@ݕ/?U~'?3F:?>T8165e?2>Z& 4??\''???T?~J@l2'Ū11A 4AH?N,Z#oAoA:\>7?8˔?DATA8E333?? ADE B?=C DATAEؐE8~E1F1FH1F(1FEXEXExE荸EDATA(xE荸E)DADADADA??  DATA(荸ExE D DlDD~~??FFQ= @ mEDATA0XE @UY{b?DATAؐEE1F1F1F1FEEȑEEDATA(ȑE8ECA@DA?DA?DA??  DATA(8EEȑEDATA(E8ECC@?DATA(!EdA>d>ddd?SN81FE1FSRDefaultEEEEE(EUYpDATA EEDATA EEEDATA EhEEfDATA hEؗEEfDATA ؗEHEhEDATA HEEؗEfDATA E(EHETDATA (EEETDATA EE(ETDATA ExEEfDATA xE蚸EE|DATA 蚸EXExET|DATA XEțE蚸EDATA țE8EXETDATA 8EEțEDATA E8EDATA(EEEEDATA(EEEEؗEDATA(EhEEEHEDATA(hE؞EEؗEHEDATA(؞EHEhEEEDATA(HEE؞EhEEDATA(E(EHEHE(EDATA((EEEEEDATA(EE(E(EEDATA(ExEEHEEDATA(xE衸EEhEEDATA(衸EXExEEEDATA(XEȢE衸EExEDATA(ȢE8EXEE蚸EDATA(8EEȢExE蚸EDATA(EE8ExEXEDATA(EEEؗEXEDATA(EEE(EțEDATA(EhEE蚸EțEDATA(hEإEEXEțEDATA(إEHEhEXE8EDATA(HEEإEțE8EDATA(E(EHEؗEEDATA((EEE(EEDATA(E(E8EEDATAEhEؗEEEHEfgk(E_EEEaY(XDATA(EEDADAfDADA?? ggfgk(VYEDATA(EEDFD@`DVgoU?? gVȯkhRYHdEDATA(ELXE@PDADAfDADA?? ggfgȴkDATA(XEMYELpC`_C?`?@ kEDLxEDATA(MY]EXEDpBDpBv;DlBDlB?? w<w<fEw<kDATA(]EMYBPDLfwDvvD??wEw3fDwEسkDATAh_E(EEL]E(RYhTY8vEDATA`(RYSave As Blender File/home/bassam/Desktop/delete/be/tests/auto_walker.blendDATAhEJFEEEEhEUfHk8JF8JFXEEEL-EDATA(XEEAAAAAAAA?? Ufk|E؆oYDATA(EXEAE?&J?@ HaYUfhk8EJFhEe^YDATAX8EEXkBUTTONS_PT_contextBUTTONS_PT_contextContext$&DATAXExE8ERENDER_PT_renderRENDER_PT_renderRenderd=ODATAXxEEERENDER_PT_layersRENDER_PT_layersLayersodPDATAXEExERENDER_PT_dimensionsRENDER_PT_dimensionsDimensionsdQDATAXEX EERENDER_PT_antialiasingRENDER_PT_antialiasingAnti-Aliasing:d:RDATAXX E!EERENDER_PT_motion_blurRENDER_PT_motion_blurSampled Motion Blurlur"dSDATAX!E#EX ERENDER_PT_shadingRENDER_PT_shadingShadingdfTDATAX#E8%E!ERENDER_PT_outputRENDER_PT_outputOutput dUDATAX8%E&E#ERENDER_PT_performanceRENDER_PT_performancePerformancedVDATAX&Ex(E8%ERENDER_PT_post_processingRENDER_PT_post_processingPost ProcessingdWDATAXx(E*E&ERENDER_PT_stampRENDER_PT_stampStampdXDATAX*EجEx(ERENDER_PT_bakeRENDER_PT_bakeBakedYDATAXجExE*ETEXTURE_PT_context_textureTEXTURE_PT_context_texture)A1DATAXxEEجETEXTURE_PT_mappingTEXTURE_PT_mappingMappingfA7DATAXEExETEXTURE_PT_influenceTEXTURE_PT_influenceInfluenceA$8DATAXEXEETEXTURE_PT_custom_propsTEXTURE_PT_custom_propsCustom PropertiesgA9DATAXXEEETEXTURE_PT_previewTEXTURE_PT_previewPreviewWA2DATAXEEXETEXTURE_PT_imageTEXTURE_PT_imageImageA$4DATAXE8EETEXTURE_PT_image_samplingTEXTURE_PT_image_samplingImage SamplingA5DATAX8EعEETEXTURE_PT_image_mappingTEXTURE_PT_image_mappingImage MappingA6DATAXعExE8ETEXTURE_PT_colorsTEXTURE_PT_colorsColors?A3DATAXxEEعETEXTURE_PT_cloudsTEXTURE_PT_cloudsCloudsGDATAXEExETEXTURE_PT_woodTEXTURE_PT_woodWoodFDATAXEXEETEXTURE_PT_pluginTEXTURE_PT_pluginPlugin$EDATAXXEEETEXTURE_PT_voronoiTEXTURE_PT_voronoiVoronoi{DDATAXEøEXETEXTURE_PT_pointdensityTEXTURE_PT_pointdensityPoint DensityBDATAXøE8ŸEETEXTURE_PT_pointdensity_turbulenceTEXTURE_PT_pointdensity_turbulenceTurbulencefCDATAX8ŸEƸEøETEXTURE_PT_musgraveTEXTURE_PT_musgraveMusgraveADATAXƸExȸE8ŸETEXTURE_PT_marbleTEXTURE_PT_marbleMarble@DATAXxȸEʸEƸETEXTURE_PT_magicTEXTURE_PT_magicMagic$?DATAXʸE˸ExȸETEXTURE_PT_distortednoiseTEXTURE_PT_distortednoiseDistorted Noisel>DATAX˸EX͸EʸETEXTURE_PT_blendTEXTURE_PT_blendBlend==DATAXX͸EθE˸ETEXTURE_PT_stucciTEXTURE_PT_stucciStucci<DATAXθEиEX͸EDATA_PT_modifiersDATA_PT_modifiersModifiersd9DATAXиE8ҸEθEDATA_PT_context_meshDATA_PT_context_meshh$1DATAX8ҸEӸEиEDATA_PT_custom_props_meshDATA_PT_custom_props_meshCustom Propertiesh2DATAXӸExոE8ҸEDATA_PT_normalsDATA_PT_normalsNormalsNh:3DATAXxոE׸EӸEDATA_PT_settingsDATA_PT_settingsSettingsh$4DATAX׸EظExոEDATA_PT_vertex_groupsDATA_PT_vertex_groupsVertex Groups`h5DATAXظEXڸE׸EDATA_PT_shape_keysDATA_PT_shape_keysShape KeyshL6DATAXXڸE۸EظEDATA_PT_uv_textureDATA_PT_uv_textureUV TexturehE7DATAX۸EݸEXڸEDATA_PT_vertex_colorsDATA_PT_vertex_colorsVertex ColorsBhE8DATAXݸE8߸E۸EMATERIAL_PT_context_materialMATERIAL_PT_context_material^A~%DATAX8߸EEݸEMATERIAL_PT_previewMATERIAL_PT_previewPreviewA&DATAXExE8߸EMATERIAL_PT_diffuseMATERIAL_PT_diffuseDiffusegA?'DATAXxEEEMATERIAL_PT_specularMATERIAL_PT_specularSpecularAS(DATAXEExEMATERIAL_PT_shadingMATERIAL_PT_shadingShadingAP)DATAXEH NYEMATERIAL_PT_transpMATERIAL_PT_transpTransparency|A*DATAXH NY NYEMATERIAL_PT_mirrorMATERIAL_PT_mirrorMirrordA+DATAX NY NYH NYMATERIAL_PT_sssMATERIAL_PT_sssSubsurface ScatteringLA,DATAX NY(NY NYMATERIAL_PT_strandMATERIAL_PT_strandStrand4A-DATAX(NYNY NYMATERIAL_PT_optionsMATERIAL_PT_optionsOptionsLA.DATAXNYhNY(NYMATERIAL_PT_shadowMATERIAL_PT_shadowShadow4A/DATAXhNYNYNYMATERIAL_PT_custom_propsMATERIAL_PT_custom_propsCustom PropertiesA0DATAXNYNYhNYBONE_PT_context_boneBONE_PT_context_boned$ DATAXNYHNYNYBONE_PT_transformBONE_PT_transformTransformd DATAXHNYNYNYBONE_PT_transform_locksBONE_PT_transform_locksTransform Locksd DATAXNYNYHNYBONE_PT_relationsBONE_PT_relationsRelationsQdDATAXNY(NYNYBONE_PT_displayBONE_PT_displayDisplayd:DATAX(NYNYNYBONE_PT_inverse_kinematicsBONE_PT_inverse_kinematicsInverse KinematicsdDATAXNYhNY(NYBONE_PT_deformBONE_PT_deformDeformZdDATAXhNY!NYNYBONE_PT_custom_propsBONE_PT_custom_propsCustom PropertiesBdDATAX!NY"NYhNYBONE_PT_constraintsBONE_PT_constraintsBone Constraintsd$DATAX"NYH$NY!NYXXOBJECT_PT_context_objectOBJECT_PT_context_object$DATAXH$NY%NY"NYXOBJECT_PT_transformOBJECT_PT_transformTransform'yDATAX%NY'NYH$NY8XOBJECT_PT_delta_transformOBJECT_PT_delta_transformDelta TransformDATAX'NY()NY%NYXOBJECT_PT_transform_locksOBJECT_PT_transform_locksTransform LocksDATAX()NY*NY'NYXOBJECT_PT_relationsOBJECT_PT_relationsRelations}bDATAX*NYh,NY()NYXOBJECT_PT_groupsOBJECT_PT_groupsGroupsA$DATAXh,NY.NY*NYXOBJECT_PT_displayOBJECT_PT_displayDisplayDATAX.NY/NYh,NYh XOBJECT_PT_duplicationOBJECT_PT_duplicationDuplicationZ$DATAX/NYH1NY.NY XOBJECT_PT_animationOBJECT_PT_animationAnimation HacksBDATAXH1NY2NY/NYHXOBJECT_PT_motion_pathsOBJECT_PT_motion_pathsMotion Paths*DATAX2NY4NYH1NYXOBJECT_PT_custom_propsOBJECT_PT_custom_propsCustom Properties$DATAX4NY(6NY2NYXXSCENE_PT_sceneSCENE_PT_sceneScene= DATAX(6NY7NY4NYȥXSCENE_PT_unitSCENE_PT_unitUnitsS DATAX7NYh9NY(6NY8XSCENE_PT_keying_setsSCENE_PT_keying_setsKeying SetsE DATAXh9NY;NY7NYXSCENE_PT_physicsSCENE_PT_physicsGravity$DATAX;NYNY;NYXSCENE_PT_custom_propsSCENE_PT_custom_propsCustom PropertiesDATAXH>NY?NYNYDATA_PT_skeletonDATA_PT_skeletonSkeletonhDATAXANY(CNY?NYDATA_PT_displayDATA_PT_displayDisplayChiDATAX(CNYxJFANYDATA_PT_bone_groupsDATA_PT_bone_groupsBone Groupsh^DATAXxJFJF(CNYDATA_PT_ghostDATA_PT_ghostGhostbhSDATAXJFJFxJFDATA_PT_iksolver_itascDATA_PT_iksolver_itasciTaSC parametersJhDATAXJFXJFJFDATA_PT_motion_pathsDATA_PT_motion_pathsMotion Paths2h DATAXXJFJFJFDATA_PT_custom_props_armDATA_PT_custom_props_armCustom Propertiesh DATAXJFJFXJFDATA_PT_emptyDATA_PT_emptyEmptyd=DATAXJFJFOBJECT_PT_constraintsOBJECT_PT_constraintsObject Constraintsd$DATA8JF8JFiRY_3DATA(xJFJF3DA DADADA??  DATA(JFXJFxJFpC@e_C@e?@ DATA(XJFȕJFJF DpB DpB;DlBDlB??  <<Y<DATA(ȕJFXJFDD@VXX??YYXYDATAh8JF8JFxJFȕJFDATAJF؜JFhEExE蚸EES{T|xkJFJFؘJFHJF8ESEDATA(ؘJFHJFDADAS`DA`DA?? TTSTkxq LGDLDATA(HJFؘJF@CHBd?CHBSSa?HB|HHB= AHTbS{Tbko LEDATAJFDATA؜JF*XJFE(EHEEUfx|kDNYDNYȝJF8JFX'bYhJXDATA(ȝJF8JFAAAAAAAA?? Uf~kȍEDDATA(8JFȝJFC^@A?? Uf}kDEDATADNY8dD8dDh*DLse SculptDATAh*DL  (DDATAб(D UYUYUYUYأUYDEUYUYUYUYUYUYUYUYUYUYUYUY UY UY UY UY UYUYUYUYUYUYUYUYUYUYUYUYUYUYUYUYUYUYUY UY!UY"UY#UY$UY%UY&UY'UY(UY)UY*UY+UY,UY-UY.UY/UY0UYUYUYUYUYUYUYUYUYUYUY UY UY UY UY UYUYUYUYUYUYUYUYUYUYUYUYUYUYUYUYUYUYUY UY!UY"UY#UY$UY%UY&UY'UY(UYMDhTDYD_DXdDiDnDHtDyD~D8DD؎D(DxDȞDDhDDDXDDæDHɦDΦDӦD8٦DަDD(DMDMDMDMDMDMDMDMDMD MD MD MD MD MDMDMDMDMDMDMDMDMDMDMDMDMDMDMDMDMDMDMD MD!MD"MD#MD$MD%MD&MD'MD(MD)MD*MD+MD,MD-MD.MD/MD0MD1MD2MD3MD4MD5MD6MD7MD8MD9MD:MD;MD<MD=MD>MD?MD@MDAMDBMDCMDDMDEMDUYDE(E1F81FEE(EȾE($RYأUYhTDhTDhTDhTDhTDhTDhTDhTDhTD hTD hTD hTD hTD hTDhTDhTDhTDhTDhTDhTDhTDhTDhTDhTDhTDhTDhTDhTDhTDhTDhTDhTD hTD!hTD"hTD#hTD$hTD%hTD&hTD'hTD(hTD)hTD*hTD+hTD,hTD-hTD.hTD/hTD0hTD1hTD2hTD3hTD4hTD5hTD6hTD7hTD8hTD9hTD:hTD;hTD<hTD=hTD>hTD?hTD@hTDAhTDBhTDChTDDhTDEhTDYDYDYDYDYDYDYDYDYD YD YD YD YD YDYDYDYDYDYDYDYDYDYDYDYDYDYDYDYDYDYDYD YD!YD"YD#YD$YD%YD&YD'YD(YD)YD*YD+YD,YD-YD.YD/YD0YD1YD2YD3YD4YD5YD6YD7YD8YD9YD:YD;YD<YD=YD>YD?YD@YDAYDBYDCYDDYDEYD_D_D_D_D_D_D_D_D_D _D _D _D _D _D_D_D_D_D_D_D_D_D_D_D_D_D_D_D_D_D_D_D _D!_D"_D#_D$_D%_D&_D'_D(_D)_D*_D+_D,_D-_D._D/_D0_D1_D2_D3_D4_D5_D6_D7_D8_D9_D:_D;_D<_D=_D>_D?_D@_DA_DB_DC_DD_DE_DXdDXdDXdDXdDXdDXdDXdDXdDXdD XdD XdD XdD XdD XdDXdDXdDXdDXdDXdDXdDXdDXdDXdDXdDXdDXdDXdDXdDXdDXdDXdDXdD XdD!XdD"XdD#XdD$XdD%XdD&XdD'XdD(XdD)XdD*XdD+XdD,XdD-XdD.XdD/XdD0XdD1XdD2XdD3XdD4XdD5XdD6XdD7XdD8XdD9XdD:XdD;XdD<XdD=XdD>XdD?XdD@XdDAXdDBXdDCXdDDXdDEXdDiDiDiDiDiDiDiDiDiD iD iD iD iD iDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiDiD iD!iD"iD#iD$iD%iD&iD'iD(iD)iD*iD+iD,iD-iD.iD/iD0iD1iD2iD3iD4iD5iD6iD7iD8iD9iD:iD;iD<iD=iD>iD?iD@iDAiDBiDCiDDiDEiDnDnDnDnDnDnDnDnDnD nD nD nD nD nDnDnDnDnDnDnDnDnDnDnDnDnDnDnDnDnDnDnD nD!nD"nD#nD$nD%nD&nD'nD(nD)nD*nD+nD,nD-nD.nD/nD0nD1nD2nD3nD4nD5nD6nD7nD8nD9nD:nD;nD<nD=nD>nD?nD@nDAnDBnDCnDDnDEnDHtDHtDHtDHtDHtDHtDHtDHtDHtD HtD HtD HtD HtD HtDHtDHtDHtDHtDHtDHtDHtDHtDHtDHtDHtDHtDHtDHtDHtDHtDHtDHtD HtD!HtD"HtD#HtD$HtD%HtD&HtD'HtD(HtD)HtD*HtD+HtD,HtD-HtD.HtD/HtD0HtD1HtD2HtD3HtD4HtD5HtD6HtD7HtD8HtD9HtD:HtD;HtD<HtD=HtD>HtD?HtD@HtDAHtDBHtDCHtDDHtDEHtDyDyDyDyDyDyDyDyDyD yD yD yD yD yDyDyDyDyDyDyDyDyDyDyDyDyDyDyDyDyDyDyD yD!yD"yD#yD$yD%yD&yD'yD(yD)yD*yD+yD,yD-yD.yD/yD0yD1yD2yD3yD4yD5yD6yD7yD8yD9yD:yD;yD<yD=yD>yD?yD@yDAyDByDCyDDyDEyD~D~D~D~D~D~D~D~D~D ~D ~D ~D ~D ~D~D~D~D~D~D~D~D~D~D~D~D~D~D~D~D~D~D~D ~D!~D"~D#~D$~D%~D&~D'~D(~D)~D*~D+~D,~D-~D.~D/~D0~D1~D2~D3~D4~D5~D6~D7~D8~D9~D:~D;~D<~D=~D>~D?~D@~DA~DB~DC~DD~DE~D8D8D8D8D8D8D8D8D8D 8D 8D 8D 8D 8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D8D 8D!8D"8D#8D$8D%8D&8D'8D(8D)8D*8D+8D,8D-8D.8D/8D08D18D28D38D48D58D68D78D88D98D:8D;8D<8D=8D>8D?8D@8DA8DB8DC8DD8DE8DDDDDDDDDD D D D D DDDDDDDDDDDDDDDDDDD D!D"D#D$D%D&D'D(D)D*D+D,D-D.D/D0D1D2D3D4D5D6D7D8D9D:D;D<D=D>D?D@DADBDCDDDED؎D؎D؎D؎D؎D؎D؎D؎D؎D ؎D ؎D ؎D ؎D ؎D؎D؎D؎D؎D؎D؎D؎D؎D؎D؎D؎D؎D؎D؎D؎D؎D؎D؎D ؎D!؎D"؎D#؎D$؎D%؎D&؎D'؎D(؎D)؎D*؎D+؎D,؎D-؎D.؎D/؎D0؎D1؎D2؎D3؎D4؎D5؎D6؎D7؎D8؎D9؎D:؎D;؎D<؎D=؎D>؎D?؎D@؎DA؎DB؎DC؎DD؎DE؎D(D(D(D(D(D(D(D(D(D (D (D (D (D (D(D(D(D(D(D(D(D(D(D(D(D(D(D(D(D(D(D(D (D!(D"(D#(D$(D%(D&(D'(D((D)(D*(D+(D,(D-(D.(D/(D0(D1(D2(D3(D4(D5(D6(D7(D8(D9(D:(D;(D<(D=(D>(D?(D@(DA(DB(DC(DD(DE(DxDxDxDxDxDxDxDxDxD xD xD xD xD xDxDxDxDxDxDxDxDxDxDxDxDxDxDxDxDxDxDxD xD!xD"xD#xD$xD%xD&xD'xD(xD)xD*xD+xD,xD-xD.xD/xD0xD1xD2xD3xD4xD5xD6xD7xD8xD9xD:xD;xD<xD=xD>xD?xD@xDAxDBxDCxDDxDExDȞDȞDȞDȞDȞDȞDȞDȞDȞD ȞD ȞD ȞD ȞD ȞDȞDȞDȞDȞDȞDȞDȞDȞDȞDȞDȞDȞDȞDȞDȞDȞDȞDȞD ȞD!ȞD"ȞD#ȞD$ȞD%ȞD&ȞD'ȞD(ȞD)ȞD*ȞD+ȞD,ȞD-ȞD.ȞD/ȞD0ȞD1ȞD2ȞD3ȞD4ȞD5ȞD6ȞD7ȞD8ȞD9ȞD:ȞD;ȞD<ȞD=ȞD>ȞD?ȞD@ȞDAȞDBȞDCȞDDȞDEȞDDDDDDDDDD D D D D DDDDDDDDDDDDDDDDDDD D!D"D#D$D%D&D'D(D)D*D+D,D-D.D/D0D1D2D3D4D5D6D7D8D9D:D;D<D=D>D?D@DADBDCDDDEDhDhDhDhDhDhDhDhDhD hD hD hD hD hDhDhDhDhDhDhDhDhDhDhDhDhDhDhDhDhDhDhD hD!hD"hD#hD$hD%hD&hD'hD(hD)hD*hD+hD,hD-hD.hD/hD0hD1hD2hD3hD4hD5hD6hD7hD8hD9hD:hD;hD<hD=hD>hD?hD@hDAhDBhDChDDhDEhDDDDDDDDDD D D D D DDDDDDDDDDDDDDDDDDD D!D"D#D$D%D&D'D(D)D*D+D,D-D.D/D0D1D2D3D4D5D6D7D8D9D:D;D<D=D>D?D@DADBDCDDDEDDDDDDDDDD D D D D DDDDDDDDDDDDDDDDDDD D!D"D#D$D%D&D'D(D)D*D+D,D-D.D/D0D1D2D3D4D5D6D7D8D9D:D;D<D=D>D?D@DADBDCDDDEDXDXDXDXDXDXDXDXDXD XD XD XD XD XDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXDXD XD!XD"XD#XD$XD%XD&XD'XD(XD)XD*XD+XD,XD-XD.XD/XD0XD1XD2XD3XD4XD5XD6XD7XD8XD9XD:XD;XD<XD=XD>XD?XD@XDAXDBXDCXDDXDEXDDDDDDDDDD D D D D DDDDDDDDDDDDDDDDDDD D!D"D#D$D%D&D'D(D)D*D+D,D-D.D/D0D1D2D3D4D5D6D7D8D9D:D;D<D=D>D?D@DADBDCDDDEDæDæDæDæDæDæDæDæDæD æD æD æD æD æDæDæDæDæDæDæDæDæDæDæDæDæDæDæDæDæDæDæD æD!æD"æD#æD$æD%æD&æD'æD(æD)æD*æD+æD,æD-æD.æD/æD0æD1æD2æD3æD4æD5æD6æD7æD8æD9æD:æD;æD<æD=æD>æD?æD@æDAæDBæDCæDDæDEæDHɦDHɦDHɦDHɦDHɦDHɦDHɦDHɦDHɦD HɦD HɦD HɦD HɦD HɦDHɦDHɦDHɦDHɦDHɦDHɦDHɦDHɦDHɦDHɦDHɦDHɦDHɦDHɦDHɦDHɦDHɦDHɦD HɦD!HɦD"HɦD#HɦD$HɦD%HɦD&HɦD'HɦD(HɦD)HɦD*HɦD+HɦD,HɦD-HɦD.HɦD/HɦD0HɦD1HɦD2HɦD3HɦD4HɦD5HɦD6HɦD7HɦD8HɦD9HɦD:HɦD;HɦD<HɦD=HɦD>HɦD?HɦD@HɦDAHɦDBHɦDCHɦDDHɦDEHɦDΦDΦDΦDΦDΦDΦDΦDΦDΦD ΦD ΦD ΦD ΦD ΦDΦDΦDΦDΦDΦDΦDΦDΦDΦDΦDΦDΦDΦDΦDΦDΦDΦDΦD ΦD!ΦD"ΦD#ΦD$ΦD%ΦD&ΦD'ΦD(ΦD)ΦD*ΦD+ΦD,ΦD-ΦD.ΦD/ΦD0ΦD1ΦD2ΦD3ΦD4ΦD5ΦD6ΦD7ΦD8ΦD9ΦD:ΦD;ΦD<ΦD=ΦD>ΦD?ΦD@ΦDAΦDBΦDCΦDDΦDEΦDӦDӦDӦDӦDӦDӦDӦDӦDӦD ӦD ӦD ӦD ӦD ӦDӦDӦDӦDӦDӦDӦDӦDӦDӦDӦDӦDӦDӦDӦDӦDӦDӦDӦD ӦD!ӦD"ӦD#ӦD$ӦD%ӦD&ӦD'ӦD(ӦD)ӦD*ӦD+ӦD,ӦD-ӦD.ӦD/ӦD0ӦD1ӦD2ӦD3ӦD4ӦD5ӦD6ӦD7ӦD8ӦD9ӦD:ӦD;ӦD<ӦD=ӦD>ӦD?ӦD@ӦDAӦDBӦDCӦDDӦDEӦD8٦D8٦D8٦D8٦D8٦D8٦D8٦D8٦D8٦D 8٦D 8٦D 8٦D 8٦D 8٦D8٦D8٦D8٦D8٦D8٦D8٦D8٦D8٦D8٦D8٦D8٦D8٦D8٦D8٦D8٦D8٦D8٦D8٦D 8٦D!8٦D"8٦D#8٦D$8٦D%8٦D&8٦D'8٦D(8٦D)8٦D*8٦D+8٦D,8٦D-8٦D.8٦D/8٦D08٦D18٦D28٦D38٦D48٦D58٦D68٦D78٦D88٦D98٦D:8٦D;8٦D<8٦D=8٦D>8٦D?8٦D@8٦DA8٦DB8٦DC8٦DD8٦DE8٦DަDަDަDަDަDަDަDަDަD ަD ަD ަD ަD ަDަDަDަDަDަDަDަDަDަDަDަDަDަDަDަDަDަDަD ަD!ަD"ަD#ަD$ަD%ަD&ަD'ަD(ަD)ަD*ަD+ަD,ަD-ަD.ަD/ަD0ަD1ަD2ަD3ަD4ަD5ަD6ަD7ަD8ަD9ަD:ަD;ަD<ަD=ަD>ަD?ަD@ަDAަDBަDCަDDަDEަDDDDDDDDDD D D D D DDDDDDDDDDDDDDDDDDD D!D"D#D$D%D&D'D(D)D*D+D,D-D.D/D0D1D2D3D4D5D6D7D8D9D:D;D<D=D>D?D@DADBDCDDDED(D(D(D(D(D(D(D(D(D (D (D (D (D (D(D(D(D(D(D(D(D(D(D(D(D(D(D(D(D(D(D(D (D!(D"(D#(D$(D%(D&(D'(D((D)(D*(D+(D,(D-(D.(D/(D0(D1(D2(D3(D4(D5(D6(D7(D8(D9(D:(D;(D<(D=(D>(D?(D@(DA(DB(DC(DD(DE(DUYUYUYUYUYUYUYUYUY UY UY UY UY UYUYUYUYUYUYUYUYUYUYUYUYUYDEDEDEDEDEDEDEDEDE DE DE DE DE DEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDE DE!DE"DE#DE$DE%DE&DE'DE(DE)DE*DE+DE,DE-DE.DE/DE0DE1DE2DE3DE4DE5DE6DE7DE8DE9DE:DE;DE<DE=DE>DE?DE@DEADEBDECDEDDEEDEFDEGDEHDEIDEJDEKDELDEMDENDEODEPDEQDERDESDETDEUDEVDEWDEXDEYDEZDE[DE\DE]DE^DE_DE`DE(E(E(E(E(E(E(E(E(E (E1F1F1F1F1F1F1F1F1F 1F81F81F81F81F81F81F81F81F81F 81FEEEEEEEEE EEEEEEEEEE E(E(E(E(E(E(E(E(E(E (EȾEȾEȾEȾEȾEȾEȾEȾEȾE ȾE($RY($RY($RY($RY($RY($RY($RY($RY($RY ($RY ($RYأUYأUYأUYأUYأUYأUYأUYأUYأUY أUY أUY أUY أUY أUYأUYأUYأUYأUYأUYأUYأUYxExExExExExExExExExExE xE xE xE xE xExExExExExExExExExExExExExExExExExExE xE!xE"xE#xE$xE%xE&xE'xE(xE)xE*xExExExExExExExExE xE xE xE xE xExExExExExExExExExExExExExExExExExExE xE!xE"xE#xE$xE%xE&xE'xE(xE)xE*xEHCD0DE[D+xE+xE8E8,)LHE;E-E EmD mD mDhJE hJE hJEhJEhJEhJEhJEhJEhJEhJEhJEhJEhJE hJE hJE hJE hJE hJEhJEhJEhJEhJEhJEhJEhJEhJEhJEhJEhJEhJEhJEhJEhJEhJEhJE;E;EHEHE-E-E E E-EmDmDmDmDmDmDmDmDmD mD mD mD mD mDmDmDmDmDmDmDmDmDmDmDmDmDmDmDmDmDmDmDmDmDmDmDmDmD mD!mDmDmD"mD#mD$mD%mDmD&mD'mD(mD)mD*mD+mDmDmDmDUD8tD(fE(fE(fE(fE(fE(fE(fE(fE(fE(fE (fE (fE (fE (fE (fE(fE(fE(fE(fE(fE(fE(fE(fE(fE(fE(fE(fE(fE(fE(fE(fE(fE(fE (fE!(fE"(fE#(fE$(fE%(fE&(fE'(fE((fE)(fE*(fE+(fE 8tDaEE aE aE 8tDaEaEaEaEaEaEaEaEaEaE aE aE aE aE aEaEaEaEaEaEaEaEaEaEaEaEaEaEaEaEaEaEx E0F x E x Ex Ex Ex Ex Ex Ex Ex Ex Ex Ex E x E x E x E x E x Ex Ex Ex Ex Ex Ex Ex Ex Ex Ex Ex Ex Ex Ex Ex Ex Ex E LE L L L L L L L L L L  L  L  L  L  L L L L L L L L L L L L L L L L L L L  L! L" L# L$ L% L& L' L( L) L* L+ L(oY LtEGE(E9E,EsD8uEDATA*XE؜JFxEXEțE蚸ES}Tgk*X(JF*Xx*X%bY KFDATA(*Xx*XDADAS`DA`DA?? TTS}Tkȭ$XELDATA(x*X*X`D3C`DBCTLBL?? TMCMSTMkȡExwEDATA(*XX*XTYDATATYDATA(X*XH*X*X.-*X-DATA0*Xbpy.context.active_object.keyframe_delete('')DATA(H*X8*XX*X65*X3DATA8*Xbpy.context.active_object.keyframe_delete('location')DATA(8*XH*XrbYDATArbYDATA*XXJFE#bY*X8*X>>> python:DATA(x*X*XDADA'DADA??  (('(DATA(*XX*Xx*X CCx?@ pg2DATA(X*X*X*X!CFfCiF?@ o"DATA(*X8*XX*XsCmbC?@ 5'gDATA(8*X*X4gJFDATA`JF!gN??P=J=AHM/?nG?X?k>yp嵼j?A>y|; \?/?X?0嵼nk>j?G?} A> Ak@A?>{ZHGq(?>v>y>|;F?ɩ̾A̾w0o}"A \A$(?a? FI} >? ?3Dʅ5ןBd]A*B )@/?nG?X?k>yp嵼j?A>WZ?>{ZHGq(?>v>y>|;F?ɩ̾A̾#o[^MAWZABg0==ABg0=AmB\d?Q$d>dddL?DATA(*XHJF2DADA~DADA??  ~DATA(HJFJF*XpCs_Cs?@ DATA(JF(JFHJF DpBDpB;DlBDlB??  <<~<DATA((JFJF#ChD@`~??~DATAhJF(JFE*X(JFDATA(HJFJF0DADA/DADA??  00/]v0DATA(JFHJFCZD@o0??0/wE0DATA(JFJFHJFJFTE DATATE]]JFDATAJF]UYUYUYUYأUYDEUY           !DATAE(E*X8EE(EțES kxƾEXE达EžEXFLHtEDATA(达EXE1DA1DA1DA1DA?? SkE~EDATA(XEžE达EA@(@@@(?@ y(kEhþEDATAXEhþEXTEXT_PT_propertiesTEXT_PT_propertiesProperties.DATAXhþEE8XTEXT_PT_findTEXT_PT_findFind/DATA(žEXE`DC:PCBDĺRD #<zD S 8kVYVYDATAxƾEhnY xUYI7 c?-`update()ernionto_quaternion()PEDATA(hɾEʾECADAfDADA??  gg'igDATA(ʾEhɾEDEDCVgU?? gV'YgDATA(H̾E̾EnEDATAnEDATA(̾E;EH̾E*)(;E)DATA,(;Ebpy.context.active_bone.matrix_local.head-DATA(;EξE̾EξEDATA ξEbpy.context.active_bone.headREEDATA(ξEhϾE;EξEDATAξEfor a in range(0,len(b)):DATA(hϾEϾEξE ظRY DATA ظRY print aDATA(ϾEоEhϾEHоEDATA HоEbpy.context.scene.update('')REEDATA(оEѾEϾE(ѾEDATA(ѾEbpy.context.scene.update()DATA(ѾEҾEоEX^YDATAX^Y)DATA(ҾExҾEѾE(aYDATA(aYa)DATA(xҾEhӾEҾE43ҾE3DATA4ҾEbpy.context.active_object.pose.bones['root'].matrixDATA(hӾEӾExҾE=<hE3DATA@hEbpy.context.active_object.pose.bones['leg_upper.000'].matrixDATA(ӾEԾEhӾE:9HԾE9DATA<HԾEbpy.context.active_object.pose.bones['root'].matrix_basisDATA(ԾEվEӾE43HվE3DATA4HվEbpy.context.active_object.data.bones['root'].matrixDATA(վE־EԾE'&8־E&DATA(8־Ebpy.context.active_object.matrix_localDATA(־E׾EվEGF׾EFDATAH׾Emathutils.Vector((-3.9,5.72,0))*bpy.context.active_object.matrix_worldDATA(׾EؾE־EPO+EODATAP+Emathutils.Vector((-3.9,5.72,0))*bpy.context.active_object.matrix_world.invert()DATA(ؾEؾE׾EIH[nYHDATAL[nYbpy.context.active_object.pose.bones['root'].keyframe_insert('location')DATA(ؾE\nYؾE'&8\nY&DATA(8\nYbpy.context.active_object.matrix_worldDATA(\nY]nYؾE]nYDATA ]nY'Armature' in bpy.data.objectsDATA(]nYh^nY\nY! ]nY DATA$]nYbpy.context.scene.objects.activeDATA(h^nYH_nY]nY^nYDATA^nYbpy.ops.object.duplicate()DATA(H_nY8`nYh^nY65_nY5DATA8_nYbpy.context.active_object.pose.bones['root'].locationxDATA(8`nYHanYH_nYPO`nYODATAP`nYbpy.context.active_object.pose.bones['root'].location=mathutils.Vector((0,1,1))DATA(HanYHbnY8`nY<;anY;DATA<anYbpy.context.active_object.data.edit_bones['leg_limit.000'].DATA(HbnYHcnYHanY=<bnY<DATA@bnYbpy.context.active_object.data.bones['leg_limit.000'].matrixREEDATA(HcnYXdnYHbnYPOcnYODATAPcnYbpy.context.active_object.data.bones['leg_limit.000'].matrix.translation_part()DATA(XdnYXenYHcnY;:dnY:DATA<dnYbpy.context.active_object.data.bones['leg_limit.000'].tailDATA(XenYXfnYXdnY;:enY:DATA<enYbpy.context.active_object.data.bones['leg_limit.000'].headDATA(XfnYXgnYXenYA@fnY@DATADfnYbpy.context.active_object.pose.bones['root'].rotation_quaternionDATA(XgnYgnYXfnYHEDATAHEimpoort mathutilsDATA(gnY8hnYXgnYȵRYDATAȵRYimport mathutilsDATA(8hnYinYgnYhnYDATAhnYa=mathutils.Euler((0,0,0))DATA(inYjnY8hnY:9inY9DATA<inYbpy.context.active_object.data.bones['root'].matrix_localDATA(jnYknYinYCBjnYBDATADjnYbpy.context.active_object.pose.bones['leg_upper.000'].matrix_basis?DATA(knYknYjnYEDATAEbpy.data.actionsonDATA(knYhlnYknY"!knY!DATA$knYbpy.data.actions[0].use_fake_userDATA(hlnYHmnYknY#"lnY"DATA$lnYbpy.context.active_object.childrenDATA(HmnYHnnYhlnY;:mnY:DATA<mnYbpy.context.active_object.data.bones['leg_limit.001'].headDATA(HnnYxonYHmnYwvnnYkDATAxnnYbpy.context.active_object.data.bones['leg_limit.001'].head-bpy.context.active_object.data.bones['leg_target.001'].headDATA(xonYpnYHnnYyxonYDATA|onY(bpy.context.active_object.data.bones['leg_limit.001'].head-bpy.context.active_object.data.bones['leg_target.001'].head)DATA(pnYqnYxonY(qnYDATA(qnY(bpy.context.active_object.data.bones['leg_limit.001'].head-bpy.context.active_object.data.bones['leg_target.001'].head).lengthDATA(qnY8snYpnYhrnY4DATAhrnY(bpy.context.active_object.data.bones['leg_limit.002'].head-bpy.context.active_object.data.bones['leg_target.002'].head).lengthDATA(8snYxtnYqnY~snYkDATAsnY(bpy.context.active_object.data.bones['leg_limit.002'].head-bpy.context.active_object.data.bones['leg_upper.002'].head).lengthODATA(xtnYunY8snY~tnY4DATAtnY(bpy.context.active_object.data.bones['leg_limit.001'].head-bpy.context.active_object.data.bones['leg_upper.001'].head).lengthDATA(unYvnYxtnY~(vnYZDATA(vnY(bpy.context.active_object.pose.bones['leg_limit.001'].head-bpy.context.active_object.pose.bones['leg_upper.001'].head).lengthDATA(vnY8xnYunY~hwnY4DATAhwnY(bpy.context.active_object.pose.bones['leg_limit.002'].head-bpy.context.active_object.pose.bones['leg_upper.002'].head).lengthDATA(8xnYynYvnY#"xnY"DATA$xnYbpy.context.active_object.update()DATA(ynYynY8xnY"!ynY!DATA$ynYbpy.context.active_object.update(DATA(ynYznYynY)(hznY(DATA,hznYbpy.context.active_object.update(refres)DATA(znY{nYynY43X{nY2DATA4X{nYbpy.context.active_object.update(refresh=0,scene=0)DATA({nY|nYznY,+H|nY*DATA,H|nYbpy.context.active_object.update(refresh=0)DATA(|nY8}nY{nY H^Y DATA H^Yb=[1,2,3]DATA(8}nY}nY|nY E DATAE print(a)DATA(}nY~nY8}nYȐEDATAȐEa=[]DATA(~nY~nY}nY URY DATA URYa=[1,2,3]DATA(~nY~nY~nY E DATA Eb=[2,3,4]DATA(~nYhnY~nYMYDATAMYa+bDATA(hnYnY~nY8DDATA8Da.min()DATA(nYHnYhnY XE DATA XEminimum(a)DATA(HnYnYnY 9SY DATA 9SYa=[-1,2,5]DATA(nY(nYHnYELDATAELmin(a)DATA((nYnYnY8UEDATA8UEbpy.context.active_boneDATA(nYxnY(nY%$nY$DATA(nYbpy.context.active_bone.matrix_localDATA(xnYxnYnY?>nY>DATA@nYbpy.context.active_bone.matrix_local.copy().translation_part()DATA(xnYXnYxnY$#nY#DATA$nYbpy.context.active_pose_bone.matrixDATA(XnYXnYxnY;:ȄnY:DATA<ȄnYbpy.context.active_object.animation_data.action.fcurves[0]DATA(XnYhnYXnYNMȅnYMDATAPȅnYbpy.context.active_object.animation_data.action.fcurves[0].keyframe_points[0]DATA(hnYxnYXnYQP؆nYPDATAT؆nYbpy.context.active_object.animation_data.action.fcurves[0].keyframe_points[0].coDATA(xnYxnYhnYEDnY9DATAHnYbpy.context.active_object.animation_data.action.fcurves[1].data_pathDATA(xnYxnYxnYEDnY9DATAHnYbpy.context.active_object.animation_data.action.fcurves[2].data_pathDATA(xnYxnYxnYEDnY9DATAHnYbpy.context.active_object.animation_data.action.fcurves[3].data_pathDATA(xnYxnYxnYEDnY9DATAHnYbpy.context.active_object.animation_data.action.fcurves[4].data_pathDATA(xnYhnYxnY87nY7DATA8nYbpy.context.active_object.animation_data.action.fcurvesDATA(hnYhnYxnYCB،nYBDATAD،nYbpy.context.active_object.animation_data.action.fcurves[0].id_dataDATA(hnYhnYhnYHG؍nYGDATAH؍nYbpy.context.active_object.animation_data.action.fcurves[0].id_data.nameDATA(hnYhnYhnYED؎nYDDATAH؎nYbpy.context.active_object.animation_data.action.fcurves[0].data_pathOOODATA(hnYhnY<;؏nY;DATA<؏nYbpy.context.active_object.animation_data.action.fcurves[0].DATAhnYExƾEhɾEʾEH̾EhnY>>> python55DATA(8nYnYZDAN$!7DAf DA DA??  gg'igDATA(nYnY8nYHCHC?? YDATA(nYnYnY''YDATA(nYnYBz.eByBB # ?|Hi'YDATAE( EhnY8nYnY(EF>DATAh(EUYDATA(EHE`DAN$!7DAfU>ѹ?~s?ҭ=ԗ>3<>$?/D}PH?x?2=N??~s?2<>}ҭ=$?OH?ԗ>/Dx? I2[???3>)<.9 =;>^9;'>Wn*<@Xp@V9CDɓI2[???~s?ҭ=ԗ>3<>$?/D}PH?x?Μ@@"?3>)<.9 =;>^9;'>Wnfg?E?!z;?4B@4B@4B@@n%9A3?Nb?Ds>@?N<I=1[ǿ?BtB|]BDATA8EE( E ExE333?? ADE B?=@E@ DATA(EE2DADA~DADA??  ~DATA(EEEpCs_Cs?@ DATA(EhEE DpBDpB;DlBDlB??  <<~<DATA(hEE#ChD@`~??~DATAhEh!EEEhEDATA(EE0DADA/DADA??  00/]v0DATA(EECZD@o0??0/wE0DATAh!EXEEEE DATA("E8$ECADA/DADA??  00/]v0DATA(8$E%E"EwEDATA(%E'E8$E//wEDATA('E%ECC&f@@0/wE0DATA(!XEh!E"E'EdA>d>ddd?DATA(EEXEؗEE8Exk:EJFx)E5ElFEDATA(x)E*E#DA#DA"DA"DA?? !،kVYHMYDATA(*E81Ex)E CC?@ "2kX,E/EMYXEDATAXX,E-EXVIEW3D_PT_tools_objectmodeVIEW3D_PT_tools_objectmodeObject Tools*&DATAX-E/EX,EhXReferenceDeskPanelReferenceDeskPanelReference Desk$DATAX/E-ERigaMaRuleEditPanelRigaMaRuleEditPanelEdit Rules$DATA(81EH4E*E!CfCZ?@ #"k2E2E(EdbYDATAX2ExkVIEW3D_PT_last_operatorVIEW3D_PT_last_operatorTranslaterame Menu4'DATA(H4E5E81E4Cs#Cs?@ kDATA(5EH4E$k8EhE(7EDATA`(7Ek>+=>ѹ?~?=XB<cx?e]Z>y?x:>&?~?=bx?Z>XB*r??>԰<|5C7>8(!=U̹f;,r??~?=XB<cx?e]Z>y?x:>&?>԰<|5C7>8(!=U̹f;d>ddd?SNEE81FSRGame Logic.001EEEHJFJFEUYDATA EHEDATA HEEEaDATA E(EHEvaDATA (EEEvDATA EE(EFDATA ExEEvFDATA xEEEDATA EXExEDATA XEEEDATA E8EXEvDATA 8EEE8DATA EE8E8FDATA EEE@DATA EE@FDATA(E@EHEEDATA(@EhJFEHEEDATA(hJFJF@EEEDATA(JFHJFhJFEEDATA(HJFJFJFExEDATA(JF(JFHJFxEEDATA((JFJFJF(EXEDATA(JFJF(JFEXEDATA(JFxJFJFExEDATA(xJFJFJFEXEDATA(JFXJFxJFEEDATA(XJFJFJF(EEDATA(JF8JFXJFEEDATA(8JFJFJF8EEDATA(JFJF8JFEEDATA(JFJFJFE8EDATA(JFJFJFxEEDATA(JFhJFJF8EEDATA(hJFJFJFEEDATA(JFHJFhJFEEDATA(HJFJFEEDATAJFKFEHEEEvGawEEJFKFDATA(JFKF DADAvDADA??  wwvG`wDATA(KFJFmEmEpoo?? paaDATAKFKFJFXEEE(Ev^EExKFKFDATA(xKFKFCACA]CACA??  ^^v^DATA(KFxKFCVCM^NL?@ ^Mv^XKFHEDATAXXKFKFBUTTONS_PT_contextBUTTONS_PT_contextContextL$DATAXKF KFXKFRENDER_PT_renderRENDER_PT_renderRenderL=DATAX KF8 KFKFRENDER_PT_layersRENDER_PT_layersLayersoLDATAX8 KF KF KFRENDER_PT_dimensionsRENDER_PT_dimensionsDimensionsLDATAX KFxKF8 KFRENDER_PT_antialiasingRENDER_PT_antialiasingAnti-Aliasing:L:DATAXxKFKF KFRENDER_PT_motion_blurRENDER_PT_motion_blurFull Sample Motion Blur"LDATAXKFȮExKFRENDER_PT_shadingRENDER_PT_shadingShadingLfDATAXȮEhEKFRENDER_PT_outputRENDER_PT_outputOutput LDATAXhEEȮERENDER_PT_performanceRENDER_PT_performancePerformanceLDATAXEEhERENDER_PT_post_processingRENDER_PT_post_processingPost ProcessingL DATAXEHEERENDER_PT_stampRENDER_PT_stampStampL DATAXHEERENDER_PT_bakeRENDER_PT_bakeBakeL DATAEDATAKFEKFExEEXEEE(EEDATA((EECADA?DA?DA??  DATA(EE(E\CKC?@ EEDATAXELOGIC_PT_propertiesLOGIC_PT_propertiesProperties$DATA(EEDpCPDC+<**??FF?H? <+<DATAHEDATAEhEKF8EEEE9vE >xExEEEDATA(EECADA=CACA??  >>9v>DATA(EECCDND=~ #<zD >>9vE>DATAxE xUY DATAhEEEEEE8EA7E8E8EXEEDATA(XEEfDA}DADADA??  A7DATA(E8EXEC@FCF++?@ ,AAEDATA(8EEECfCww?@ xfA7"DATA(EE8E#Cl#Coo?@ p^77EDATA(EEA7EEDATA`E#=)1{=o?????????#=)1{=o?5A3sAy?????#=)1{=o??5AoA Q=\>7?8˔?DATA88E333?? ADE B?=C DATAEhExEEEE?E@EEEEDATA(EECACA?SCASCA??  @@?@DATA(EECC@/@~..~??@/m?E@DATAEHL`YDATAHL`YEDATAEUYUYUYUYأUYDEUYUYSNE(EESRScriptingg.001EEXEEhEsEUYDATA E8EDATA 8EEEaDATA EE8EvaDATA EEEvDATA EEEFDATA EhEEvFDATA hEEEFDATA EHEhEDATA HEEEDATA E(EHEDATA (EEEDATA EE(EDATA ExEE,DATA xEEEv,DATA ExEFDATA(XEE8EEDATA(E8EXE8EEDATA(8EEEEEDATA(EE8EEEDATA(EEEEhEDATA(EEEEEDATA(EhEEEHEDATA(hEEEEHEDATA(EHEhEhEEDATA(HEEEEEDATA(E(EHEE(EDATA((EEEE(EDATA(EE(EHEEDATA(ExEEEEDATA(xEEE(EEDATA(EXExEEEDATA(XEEEhEEDATA(E8EXEExEDATA(8EEEExEDATA(EE8EExEDATA(EEEEEDATA(EEEhEEDATA(EEEEDATAhE;EE8EEEvGawEE8E:EDATA(8E:E DADAvDADA??  wwvG`wDATA(:E8EmEmEpoo?? paaDATA;ETEhEEExEEv+,REREx>> DATA(ZExgETEEEhEEEeEeE[E`EDATA([E\EfDA3;Q?Fwi?JF>#,TY!e?*=>o?E>Fwi?TY5;JF>!e?Q?#,+=>`DAoy@?>sޠQQvZ? > .>#,>m??*=`oAoAt>uU? G@~*K>{-?6hćC% ÈG6DWѦCGBD>3;Q?Fwi?JF>#,TY!e?*=>o?>sޠQQvZ? > .>#,>m??*=`oAoA\>7?8˔oAoA;?DATA8eE333?? ADE B? #<C DATAxgEmE(ZEEHEE(EkEkEhhEiEDATA(hhEiECA=DADADA??  DATA(iEhhE>> pythonDATAmEsExgEEhEExEv-EXqEXqExnEoEDATA(xnEoECACACACA??  v-FDATA(oExnECCm}||??}vGEDATAXqE(JYDATA(JYrEDATArEUYUYUYUYأUYDEUYUYDATAsEmEHEEEEE EEtE8EDATA(tE8ECA=DADADA??  DATA(8EtEDDD)dDx}.CDACr #<zD ssEsDATAE xUY =z||SN(EȾEESRUV EditingHEXEE(EEEUYDATA HEEDATA E(EHEaDATA (EEEvaDATA EE(EvDATA ExEEFDATA xEEEvFDATA EXExEFDATA XEEDATA(E8EE(EDATA(8EEEEEDATA(EE8E(ExEDATA(EEEExEDATA(EEEEEDATA(EhEEHEXEDATA(hEEEHEEDATA(EHEhEEXEDATA(HEEExEEDATA(E(EHEEXEDATA((EEExEDATAEhEEE(ExEvGaw8E8EEEDATA(EE DADAvDADA??  wwvG`wDATA(EEmEmEpoo?? paaDATAhEEEHEEEXEEFHEHEXEEDATA(XEECAqDA)DA)DA??  DATA(EEXE[C`JC++?@ ,,E,8E8EDATAX8EIMAGE_PT_gpencilIMAGE_PT_gpencilGrease Pencil:DATA(EECC)? @,E,DATA(!HEdA>d>ddd?DATAEhEXEExEEvEFEEEEDATA(EEfDAlDADADA??  vDATA(EEE CmCm?@ dExExEDATAXxEVIEW3D_PT_tools_objectmodeVIEW3D_PT_tools_objectmodeObject Tools*DATA(E(EE!CfC[Zww?@ xxdx"EEDATAXEVIEW3D_PT_last_operatorVIEW3D_PT_last_operatorOperatorDATA((EEE#C~#C~  ?@  vvEDATA(E(EevE,EDATA`E:?? JLD>3;Q?Fwi?JF>#,TY!e?*=>_?E>Fwi?TY4;JF>!e?Q?#,+=>6@_???0QQ{?X>?>#,>~Μz?T*=dbR@_@aB>?<`K5>}Q?sMd@JWA.Xj@-@D>3;Q?Fwi?JF>#,TY!e?*=>_??0QQ{?X>?>#,>~Μz?T*=dbR@_@\>7?8˔_@_@j:?DATA8E333?? ADE B?=C SNȾE(ESRVideo EditingEE(EEEEUYDATA EXEDATA XEEEaDATA E8EXEvaDATA 8EEEvDATA EE8EFDATA EEEvFDATA EEEvDATA EhEEdDATA hEEELFDATA EHEhEDATA HEEELDATA EHEvdDATA((EEXEEDATA(EE(EXEEDATA(ExEEEEDATA(xEEEEEDATA(EXExEEEDATA(XEEEEEDATA(E8EXEEhEDATA(8EEEEEDATA(EE8EEHEDATA(EEEhEHEDATA(EEEEEDATA(EhEE8EEDATA(hEEEEEDATA(EHEhEE8EDATA(HEEEEhEDATA(E(EHEEHEDATA((EEEEEDATA(E(EEEDATAEEEXEEEvGawUYUYEhEDATA(EhE DADAvDADA??  wwvG`wDATA(hEEmEmEpoo?? paaDATAEEEEEE8EvcwdEEE8EDATA(E8EDADAvDADA??  wwvwDATA(8EE@~CHBpF}CHBvvI?HB|HHB= AHwJvcwJDATAEDATAEXEEEEEEvewEEEEDATA(E(EDADAv`DA`DA??  wwve~wDATA((E8EE\CKC?@ vEEDATAXESEQUENCER_PT_previewSEQUENCER_PT_previewScene Preview/Render=DATA(8EE(EppDDppDD;F;F'7PGDATA(E8EzCAzCA A@|HB #<BiDATAE@DATAXEEEEEhEHEKEL5EEHEEDATA(HEEdDASDAKgDAgDA??  LLK*LDATA(E(EHEHCpHC@??  +EDATA((EEEKK+EDATA(E(EC@zC Arro:o:|HPCGisK+EsDATAEHEDATAhHEUYDATAEXEHEhEEEMvE*5HUYHUYE؍UYDATA(EXECA@DA)@2DA@2DA??  **Mv**DATA(XEEEvv+EDATA(E؍UYXECC``D+[+[D);F;F'7PG**Mv+E*DATA(؍UYEzCAzCAKK A@|HB #<BiLDATAHUY@SCUYSCScenetageain8EDEأUYUYUYUY2@R`A^@UYܷED?dd??< 28ZQ! ????EE??????/tmp/aw L?L?L??>??_??BLENDER_RENDERD?fC?`B^Y:gEA << ?=?DATA`8EEUYDATA`EUYnetwork_renderEEDATA`Eserver_addressE DATA E[default]DATA`UYEpose_templatesDATA(UYUY.|x EDATA(UYUYUY.l8tDDATA(UYUYUY.|aEDATA(UYhUYUY`K;EDATA(hUYؚUYUY-PHEDATA(ؚUYHUYhUY>i-EDATA(HUYUYؚUYv EDATA(UY(UYHUY.lmDDATA((UYUYUY .|hJEDATA(UY(UY .DEDATAUYUYUYUY?L?B ?o:= ??ަDP2 HB2 B2 HB2 HB2 HB2 HB2 HB>A #<===ff??AHz?=???C#y??DATA8UYyDDATA8UYyDDATA`UYDdd|AJA6V{?DATAXERenderLayerrIMȠUYIMRender Result??CAUYCACameraamera.001?=B B@?WOأUYWOWorldrcP=rcP=rcP=6$<6$<6$<??A @A@pA A?L= ף;>??UYDATA(UY TXxUY}DTXauto_walkerxUYmEEExDDATA(xUYUYnE8E!FREEDATA(UYXUYxUY80ENYFREEDATA(XUYȨUYUYJYXE FREEDATA(ȨUY8UYXUY(ELFREEDATA(8UYUYȨUYnEE FREEDATA(UYUY8UYFOYhEFREEDATA(UYUYUY^YM6MREEDATA(UYUYUYdYxDREEDATA(UYhUYUYnEX&3LbFREEDATA(hUYثUYUY9Eh$XFREEDATA(ثUYHUYhUYrD.bYFREEDATA(HUYUYثUYoE$XMFREEDATA(UY(UYHUYhELHEFREEDATA((UYUYUY`YEFREEDATA(UYUY(UYHpE(aY"FREEDATA(UYxUYUYpEYFREEDATA(xUYUYUYhExB6MFREEDATA(UYXUYxUY(qEXhE;FREEDATA(XUYȯUYUYqE2EFREEDATA(ȯUY8UYXUY(rExYFREEDATA(8UYUYȯUYrEx bYFREEDATA(UYUY8UYsEEFREEDATA(UYUYUYxsE L7FREEDATA(UYUYUYsEEEFREEDATA(UYhUYUYtE(EVFREEDATA(hUYزUYUY(uEhlFFREEDATA(زUYHUYhUYuExVYFREEDATA(HUYUYزUYh}NYxUYFREEDATA(UY(UYHUY8PTYhLYFREEDATA((UYUYUYvEEgFREEDATA(UYUY(UYvEDLPFREEDATA(UYxUYUYXwEت`YFREEDATA(xUYUYUYHVEEnEDATA(UYXUYxUY8ćDeYnnDATA(XUYȶUYUY(ELDnnDATA(ȶUY8UYXUYhuEEnEDATA(8UYUYȶUY(EX E FREEDATA(UYUY8UYE8E DATA(UYUYUYHLYHE FREEDATA(UYUYUYwE(mEFREEDATA(UYhUYUYxEȍYlifDATA(hUYعUYUYdEEFREEDATA(عUYHUYhUYTEEFREEDATA(HUYUYعUY8xEh^Y4FREEDATA(UY(UYHUYxEz^Y%thiDATA((UYUYUY(yE(tE.!EDATA(UYUY(UYyEx4ED!EDATA(UYxUYUYBLYE:EEDATA(xUYUYUY؟YEFREEDATA(UYXUYxUY8zE8YE2FREEDATA(XUYȽUYUYzE(kdY6FREEDATA(ȽUY8UYXUY8{ETE)_arDATA(8UYUYȽUY{EH/3L)FREEDATA(UYUY8UY8|EaY1REEDATA(UYUYUY|EmEREEDATA(UYUYUYhEL4 LFREEDATA(UYhUYUY(}ENENFREEDATA(hUYUYUY}EJF7EEDATA(UYHUYhUYH~EaY1y mDATA(HUYUYUY~E$XBEEDATA(UY(UYHUYXEE_EEDATA((UYUYUYEEPREEDATA(UYUY(UYE(EFREEDATA(UYxUYUYEE`##DATA(xUYUYUYȁEH:EGntEDATA(UYXUYxUY7SYE g dDATA(XUYUYUYXEE7FREEDATA(UY8UYXUY؂EE7fraDATA(8UYUYUYXEȔE7frEDATA(UYUY8UY؃ERY4FREEDATA(UYUYUY[EXE FREEDATA(UYUYUYXE+E:FREEDATA(UYhUYUYE^YIFREEDATA(hUYUYUYEHEFREEDATA(UYHUYhUY(lFh"WYFREEDATA(HUYUYUYEE=FREEDATA(UY(UYHUYE:LY,ofiDATA((UYUYUYEh׷E1FREEDATA(UYUY(UYEeY.FREEDATA(UYxUYUYEEFREEDATA(xUYUYUYEEFREEDATA(UYXUYxUYEE6FREEDATA(XUYUYUYEEUY`FREEDATA(UY8UYXUYxRYYTYFREEDATA(8UYUYUY8ExE6FREEDATA(UYUY8UYE^dYGFREEDATA(UYUYUY8MYcYFREEDATA(UYUYUYHEx0EGFREEDATA(UYhUYUY؊EhPY@FREEDATA(hUYUYUY(EX EFREEDATA(UYHUYhUYhE[E{FREEDATA(HUYUYUY8E=EDFREEDATA(UY(UYHUYȌEؚ1F&FREEDATA((UYUYUY8Eآ LdEEDATA(UYUY(UYESY REEDATA(UYxUYUYEjL?FREEDATA(xUYUYUYE^YDATA(UYXUYxUY؀EhEiusDATA(XUYUYUYxEKLY5aseDATA(UY8UYXUYEKdYPdbDATA(8UYUYUYxE(WYREEDATA(UYUY8UYEh5EIFREEDATA(UYEUY8E!PY.n=0DATA(E(EUYE8E1FREEDATA((EEE8EX_EBFREEDATA(EE(EȑEVYPFREEDATA(ExEEhEOE9FREEDATA(xEEEE_YEEDATA(EXExEhExE`REEDATA(XEEEExPYGFREEDATA(E8EXEH>DxE FREEDATA(8EEEEE7FREEDATA(EE8E(EE7FREEDATA(EEEE(E7EEDATA(EEE(EX E4_EDATA(EhEEE^Y FREEDATA(hEEEEhE:FREEDATA(EHEhE8EEIFREEDATA(HEEEExEREEDATA(E(EHEE^EFREEDATA((EEEؗExlEFREEDATA(EE(EQEEEEDATA(ExEEE8j0F##DATA(xEEE(E E9FREEDATA(EXExEEVY8FREEDATA(XEEEHE8E%REEDATA(E8EXEExUY;ingDATA(8EEEHEE*FREEDATA(EE8EțEu L'FREEDATA(EEE8EخE<FREEDATA(EEEȜED##DATA(EhEE8EHzSY2ntEDATA(hEEEEHE3FREEDATA(EHEhE_EXEFREEDATA(HEEE8EE4FREEDATA(E(EHEXEhUUY FREEDATA((EEEE8$XAFREEDATA(EE(ENYPY+qq!qDATA(ExEE+XJYqqqqDATA(xEEEXNYbE+qqqqDATA(EXExENYhE)eachDATA(XEEEXNYOTY). 0 DATA(E8EXENYh8E"[eacDATA(8EEEhE)XistaDATA(EE8EHNYeYMphasDATA(EEENYxeY9qqqqDATA(EEExNY SY posDATA(EhEENYa^YM4+DATA(hEEEUYdD4+DATA(EHEhENYRY/-DATA(HEEENYEL-qqqqDATA(E(EHENYL-####DATA((EEENYhgE"qqqqDATA(EE(ExNYE####DATA(ExEENYȑD6DATA(xEEEXNYEqqqqDATA(EXExEHNYȖDqqqqDATA(XEEENYEb!llDATA(E8EXENYE4+DATA(8EEENYTY/qqqqDATA(EE8ENYX~E-qqqqDATA(EEENYE-qqqqDATA(EEENYSY"####DATA(EhEENYxEqqqqDATA(hEEEhNY~EGqqqqDATA(EHEhENYx^1FRmathDATA(HEEENYxE3q!qqDATA(E( EHENYq^Y3q!qqDATA(( E EENYhURY2qqqqDATA( E E( ENYE_posDATA( Ex E EhNYEbqqqqDATA(x E E ENYv Yq!qqDATA( EX Ex ExNYEse[eDATA(X E E ENYdEqqqqDATA( E8 EX EHNYEqqqqDATA(8 E E EXNYXE_legDATA( E E8 ENYaY$____DATA( E E EEXQE DATA( E E E(NY8 L____DATA( EhE ENYwX____DATA(hEE ENYIY DATA(EHEhEXNYxD DATA(HEEENY-L ____DATA(E(EHE(NY6M DATA((EEENYL`Y( DATA(EE(ENYx8L5_groDATA(ExEENY1FqqqqDATA(xEEENY,EDATA(EXExEX=EXAVYDATA(XEEEXNY)bY8xDATA(E8EXENYhE5REEDATA(8EEEhNYX0F+FREEDATA(EE8ENYEO EEDATA(EEENY(E?FREEDATA(EEENYXmE;FREEDATA(EhEENYxDKEEDATA(hEEEHNYD?4+DATA(EHEhENYxdY[DATA(HEEENY(dY`4+DATA(E(EHE8NYLYQDATA((EEENYdYB4+DATA(EE(EhNY7M0DATA(ExEENYhdYqqqqDATA(xEEENY L####DATA(EXExEHNY`YBr waDATA(XEEENYHZE0qqqqDATA(E8EXEXNY\LYqqq!DATA(8EEEXNYEhistDATA(EE8ENY]LYyleg_DATA(EEENYx^LYfqqqqDATA(EEEHNY8E+llllDATA(EhEENYHjE+qqqqDATA(hEEEHNY(_LYn!!_DATA(EHEhEHNYجEF_up_DATA(HEEENYXhE1]) DATA(E(EHENYؑOYR____DATA((EEENYOYTqqqqDATA(EE(E(NYDLP DATA(ExEENYE2leg_DATA(xEEEHNYhiEmthisDATA(EX ExENYreY0_speDATA(X E EENYE DATA( E8!EX EEE____DATA(8!E!E ENY(jEqqqqDATA(!E"E8!EOYeY DATA("E"E!EOY(D6leg_DATA("E"E"E(PY`E####DATA("Eh#E"EOYHbY&####DATA(h#E#E"ExOYHEKqqqqDATA(#EH$Eh#EOYaOYPqqqqDATA(H$E$E#EOYXkEqqqqDATA($E(%EH$EOY8lE;qqqqDATA((%E%E$EXExUYqqqqDATA(%E&E(%E(OY8EqqqqDATA(&Ex&E%EOYlEh_grDATA(x&E&E&EOY(mE DATA(&EX'Ex&EHOYmE DATA(X'E'E&EOYmE_groDATA('E8(EX'EOYHnEis_fDATA(8(E(E'Eh|EEqqq!DATA((E)E8(EhOYx6L)____DATA()E)E(EOYظEKqq!!DATA()E)E)EOYnE;DATA()Eh*E)EOY8oE(####DATA(h*E*E)EOYEP####DATA(*EH+Eh*E8 OYoE;####DATA(H+E+E*E OYoYH____DATA(+E(,EH+Eh OYHpE+####DATA((,E,E+E OYsE DATA(,E-E(,EX OYpEFREEDATA(-Ex-E,EX OYqEFREEDATA(x-E-E-EhOYtEFREEDATA(-EX.Ex-E8OYXuEBith DATA(X.E.E-EOY8xEematDATA(.E8/EX.EOYyE7DATA(8/E/E.EOYuEWqqqqDATA(/E0E8/EOYvEDATA(0E0E/EOYxzE)qqqqDATA(0E0E0EhOYhEVDATA(0Eh1E0EOY-MYS____DATA(h1E1E0EOYx`YCqqqqDATA(1EH2Eh1E8OY^YqqqqDATA(H2E2E1EOYHE*qqq!DATA(2E(3EH2E(OYTYYqqqqDATA((3E3E2EOYwEqqqqDATA(3E4E(3E8OYH#TY,eg_gDATA(4Ex4E3EOYWbYy_daDATA(x4E4E4EELJDDATA(4E8Ex4E(OYN(X@qqqqDATA(8EE4EOYH=pY@qqqqDATA(EE8EHOY$TYn!DATA(EEEXOY%TYind_DATA(EEExOY@dYt_trDATA(EhEEE&TY####DATA(hEظEEE'TY####DATA(ظEHEhEEXjEFREEDATA(HEEظExE(TY+ datDATA(E(EHEEh)TY)DATA((EEExE)TY)trixDATA(EE(EENFL####DATA(ExEEXoYH(DL####DATA(xEEEhE(EC####DATA(EXExEEDLN____DATA(XEȼEE8E8JUYllllDATA(ȼE8EXEEh„Y+DATA(8EEȼEEH Y)____DATA(EE8EEE)q!qqDATA(EEEEx$DLqqqqDATA(EEEUYh E DATA(EhEEE FL/e-thDATA(hEؿEEE(OYindeDATA(ؿEHEhEhEbYqqqqDATA(HEEؿEȭEXRD%qqqqDATA(E(EHE8EVY/qqq!DATA((EEEETE/####DATA(EE(E8E8,Y.qqqqDATA(ExEEEObY0qqqqDATA(xEEE8ETYn####DATA(EXExEEhTYthisDATA(XEEE(E`YadiuDATA(E8EXEXEPYOabasDATA(8EEEETY9DATA(EE8EEXmE _posDATA(EEEEXTY0ose.DATA(EEExE8iEHtrixDATA(EhEEETY*cal.DATA(hEEEEUYHfileDATA(EHEhE8EXTY0dex]DATA(HEEEETYretuDATA(E(EHEE(KEqqqqDATA((EEEEHEPqqqqDATA(EE(EE8TYthisDATA(ExEEE^KYkDATA(xEEEEE####DATA(EXExEETY'4+DATA(XEEEhETY3DATA(E8EXEETYd!lllDATA(8EEEEHTYC####DATA(EE8E(ETY;####DATA(EEEEhTYo####DATA(EEExE( TYwqqqqDATA(EhEE8E8^Yqqq!DATA(hEEEUY1Eq!qqDATA(EHEhEE TY(_!!_DATA(HEEE(E6M)DATA(E(EHEEx!TY(###DATA((EEEE!TY1qq!qDATA(EE(EE؏8LPqqqqDATA(ExEE8EELOqqqqDATA(xEEEؿEx"TYqqqqDATA(EXExE8EPYqqqqDATA(XEEEEE DATA(E8EXEEE<qqqqDATA(8EEEHEWYDATA(EE8E(EdYqqqqDATA(EEEExEqq!!DATA(EEEE6Le.poDATA(EhEEhEE*DATA(hEEEExPY.keyfDATA(EHEhEhEXEqqqqDATA(HEEEHEHE^abasDATA(E(EHEEEXDATA((EEEEEdDATA(EE(EXEXWYI}DATA(ExEEEXEllllDATA(xEEEExE`eg_gDATA(EXExEE(EDATA(XEEExYTYVYqq!qDATA(E8EXEEE1qqq!DATA(8EEEE8F;Yq!qqDATA(EE8EEE3DATA(EEEEE"!lllDATA(EEEEECqqqqDATA(EhEEOYE7[ DATA(hEEEhmFE0####DATA(EHEhEmF(EFqqqqDATA(HEEExmFE;qqqqDATA(E(EHEmFHE9.DATA((EEEmFE9qqqqDATA(EE(E(mFhEG####DATA(ExEEEhEodeDATA(xEEEEXEY####DATA(EXExEEE____DATA(XEEE(EEDATA(E8EXEaYXUEqqqqDATA(8EEEEhE)objeDATA(EE8E~E(EDATA(EEEE8E"DATA(EEExEE1q!qqDATA(EhEE(RYXEDATA(hEEEEhE8,DATA(EHEhEEEFREEDATA(HEEEEhbY"e.upDATA(E(EHEXEXEDATA((EEEEEC08DATA(EE(EHEHEDATA(ExEEE`Y"dateDATA(xEEEEdY DATA(EXExEEE'DATA(XEEEE+bYFREEDATA(E8EXEXEaYO#thiDATA(8EEEE(Eit_pDATA(EE8EXEh6YMREEDATA(EEEEE.x frDATA(EEExEE,DATA(EhEEEE.IDATA(hEEExEE,trixDATA(EHEhEEE ntaiDATA(HEEEXEHbYe toDATA(E(EHEE^YDATA((EEETYE parDATA(EE(E8EEDATA(ExEEEhE2qqqqDATA(xEEE(EUYqqqqDATA(EXExEETEL`ionDATA(XEEE8EhUELEose.DATA(E8EXEEUEL-trixDATA(8EEEHExVELFat()DATA(EE8EEWELlistDATA(EEEEELReg_lDATA(EEExEXEL####DATA(EhEEE-LL-DATA(hEEE(EYELjqq!qDATA(EHEhEEYEL{DATA(HEEEEZEL_FREEDATA(E(EHEhEX[ELon_bDATA((EEEE[EL,es[fDATA(EE(EHE`Y DATA(ExEEE8\ELsqqqqDATA(xEEExE\EL.qqqqDATA(EXExEEx]ELqqqqqDATA(XEEEE8^EL_armDATA(E8EXEE-L"matrDATA(8EEEE^EL7e+eaDATA(EE8EE(_EL3se(bDATA(EEEE_ELcimitDATA(EEE8EX`ELkt_phDATA(EhEEEaEL DATA(hEEEXExaEL2qqqqDATA(EHEhEEaELqqqqDATA(HEEE8EXbEL`qq!lDATA(E(EHEEcELp____DATA((EEEEcELll!!DATA(EE(ExEdELx frDATA(ExEEHE(EUDATA(xEEEExeELqqqqDATA(EXExEHEeELBqqqqDATA(XEEEEhfEL_posDATA(E8EXE8EfEL0mit_DATA(8EEEEWEf____DATA(EE8EhEXEgqqqqDATA(EEEEXYE\4+DATA(EEEE89ETllllDATA(EhEEhEZEZX8DATA(hEEEmFZE8se_dDATA(ExEhELH[E,FREEDATA(xEEEL[EkyDATA(EXExEL\E.qqqqDATA(XEȇEEHL]E1 in DATA(ȇE8EXEL]EpDATA(8EEȇELlDQte(pDATA(EE8E(LH^E_  DATA(EEEL^E~lll!DATA(EEEL_EqqqqDATA(EhEEL`EDATA(hE؊EEXLxaEE####DATA(؊EHEhELbE4DATA(HEE؊ELl8L,DATA(E(EHEhLbE2FREEDATA((EEELcE1####DATA(EE(Eh LcEgxEEDATA(ExEE LHdE\FREEDATA(xEEE Lh(XTsEEDATA(EXExEh LdEZ____DATA(XEȎEE LeE,qqqqDATA(ȎE8EXE L(fEk@DATA(8EEȎEX LȸE.qqqqDATA(EE8E L.mF1DATA(EEEXLEr,DATA(EEEL^YPFREEDATA(EhEELE?####DATA(hEؑEEHLhEqqqqDATA(ؑEHEhELfEthisDATA(HEEؑELhE|dex]DATA(E(EHELXiE\#0=dDATA((EEExLjE4FREEDATA(EE(EL8aYtureDATA(ExEEhLPE2es_lDATA(xEEELQDRlookDATA(EXExELEcFREEDATA(XEȕEE8L'XFREEDATA(ȕE8EXELxE( DATA(8EEȕE(LE/#noDATA(EE8EL8EEEDATA(EEELjEFREEDATA(EEELHRY# anDATA(EhEEhL(E>DATA(hEؘEELE,qqqqDATA(ؘEHEhExL8E.llllDATA(HEEؘELE____DATA(E(EHEL8HEJqqqqDATA((EEELEZ4+DATA(EE(EXL8E\qqqqDATA(ExEELE DATA(xEEELE-rameDATA(EXExEhLEW8DATA(XEȜEE L8E_fraDATA(ȜE8EXEx LE3_limDATA(8EEȜE LEL<it_rDATA(EE8E!LE0@L(DATA(EEE"L{E----DATA(EEE#L`Ys---DATA(EhEE#LHEge toDATA(hE؟EEx$LRYaturDATA(؟EHEhE$LEtFREEDATA(HEE؟E%L(5EdateDATA(E(EHE&LEDATA((EEE'L{E08DATA(EE(E'LxEFREEDATA(ExEE(LSYje.poDATA(xEEEH)LSYe.upDATA(EXExE)LHSY<DATA(XEȣEEH*LH$X08DATA(ȣE8EXE*LX(XmREEDATA(8EEȣEx+L(X0DATA(EE8E+Lh7UYmat_DATA(EEEX,L(X/ DATA(EEE,L.TYt() DATA(EhEE8-LEDATA(hEئEE(.LHSE_y DATA(ئEHEhE.LRYace DATA(HEEئE8/L(X # DATA(E(EHE/LLY(DATA((EEE(0L8E#EDATA(EE(E0LEiREEDATA(ExEEH1Lh@LYgFREEDATA(xEEE1L(VYFREEDATA(EXExEX2LhE$t tDATA(XEȪEE2LEf DATA(ȪE8EXEx3LUYYFREEDATA(8EEȪE(4LWdY<FREEDATA(EE8E4L؀Eq DATA(EEEx5LaYDATA(EEEEoYS DATA(EhEE5LbLqqqqDATA(hEحEE86LhKEqqqqDATA(حEHEhE6LE____DATA(HEEحE7LRYllllDATA(E(EHEx7LVYK DATA((EEE8L=VY5llllDATA(EE(E8LݺEqDATA(ExEEX9LȗUYmn_##DATA(xEEE:LdYUDATA(EXExE:LdYXDATA(XEȱEEh;LEal.iDATA(ȱE8EXE;LhjEdDATA(8EEȱE<LRY9DATA(EE8E=L#ert(DATA(EEE=L57DATA(EEE>L\DATA(EhEE>LujDATA(hEشEEx?LDDATA(شEHEhE@L%DATA(HEEشEx@L7DATA(E(EHE@LZDATA((EEEALuDATA(EE(EhBLaDATA(ExEECL%DATA(xEEECL7DATA(EXExEDLnDATA(XEȸEEDL'DATA(ȸE8EXE8EL:DATA(8EEȸEEL DATA(EE8E(FLKDATA(EEEFL-DATA(EEEHGL3DATA(EhEEGLUDATA(hEػEEhHLXDATA(ػEHEhEIL0DATA(HEEػEILbDATA(E(EHEHJLhDATA((EEEKLDATA(EE(EpEDATA(ExEE8LL7elecDATA(xEEELLl DATA(EXExE>D|ch_oDATA(XEȿEE?D{#amoDATA(ȿE8EXE@D7DATA(8EEȿEADountDATA(EE8EADB_legDATA(EEEhBD^DATA(EEECDhlDATA(EhEEDDB_armDATA(hEEEDDm_maDATA(EHEhEEDJposeDATA(HEEE8FDtrixDATA(E(EHEFDKDATA((EEEHGD'lasDATA(EE(EGDZ.DATA(ExEEhHD3limiDATA(xEEEHD$DATA(EXExEXID0 #dDATA(XEEE8JDDATA(E8EXEJD%DATA(8EEEKDDATA(EE8EHr^YDATA(EEEKDDATA(EEEhLDDATA(EhEELDDATA(hEEE8MD<DATA(EHEhEMDDATA(HEEE(ND1FREEDATA(E(EHEND)DATA((EEEaYDATA(EE(E(OD"DATA(ExEEOD1DATA(xEEEKYDATA(EXExEPD9DATA(XEEEPDDATA(E8EXEQD0DATA(8EEEQD/DATA(EE8ERD-DATA(EEERD-DATA(EEESDFREEDATA(EhEExSD/DATA(hEEESDDATA(EHEhEhTDODATA(HEEEUD2DATA(EREHEUD2DATA(REREEVDpDATA(REhSEREVD`DATA(hSESERExWDDATA(SEHTEhSEWD@DATA(HTETESEhXD&FREEDATA(TE(UEHTEXDDATA((UEUETE8YDKDATA(UEVE(UEYDDDATA(VExVEUEhZDDATA(xVEVEVE8[DTDATA(VEXWExVE[DT?DATA(XWEWEVEx\D!DATA(WE8XEXWE\D'DATA(8XEXEWEX]DPDATA(XEYE8XE]D1DATA(YEYEXEx^D>DATA(YEYEYE_DDATA(YEhZEYEx_DDATA(hZEZEYE_D=DATA(ZEH[EhZEh`D&DATA(H[E[EZE`D)DATA([E(\EH[EXaD!DATA((\E\E[EaD?DATA(\E]E(\EXbD?DATA(]Ex]E\EbD8DATA(x]E]E]ExcDtDATA(]EX^Ex]E8dDcDATA(X^E^E]EdD%DATA(^E8_EX^EXeDADATA(8_E_E^EeD8DATA(_E`E8_ExfDxDATA(`E`E_EHgDcDATA(`E`E`EgD%DATA(`EhaE`EhhD?DATA(haEaE`EhDzDATA(aEHbEhaEiD_DATA(HbEbEaExjD8DATA(bE(cEHbEkD!,DATA((cEcEbEXEDATA(cEdE(cExkDDATA(dExdEcEXlD/DATA(xdEdEdElDDATA(dEXeExdE8mD0DATA(XeEeEdEmDDATA(eE8fEXeEnDYDATA(8fEfEeEnDk(DATA(fEgE8fEoDfDATA(gEgEfE8pDDATA(gEgEgEpD%DATA(gEhhEgEqD=DATA(hhEhEgEqDDATA(hEHiEhhErDDATA(HiEiEhErDDATA(iE(jEHiEHsDDATA((jEjEiEsD$DATA(jEkE(jEtDDATA(kExkEjEXuD+DATA(xkEkEkEuDDATA(kEXlExkE8vD,DATA(XlElEkEvDDATA(lE8mEXlEwDUDATA(8mEmElEwDODATA(mE8mEXxDFREEDATA$nEimport bpy,mathutils,random, mathDATA80ELlDATA JY#autowalkerDATA(E#gpl block hereDATA$nE#(c) Tube Project (Josh Wedlake)DATAFOYLlDATA^Yarmature='Armature'DATAdYLlDATAdnE#bone at ground level which aligns with y forward, z up, x to the animals right side in POSE MODE.(DATA9Eroot_bone='root'vDATArDLlDATAPoE#child of root bone used to bounce the body. Y should point up in POSE MODE.EEDATAhELbody_bone='body'(DATA`YmptDATA$HpE#the IK target prefix for each legtDATApEtarget_bone='leg_target'DATAhEtheDATA<(qE#the limit radius bone - the radius is taken from the head DATA qElimit_radius_bone='leg_limit'EEDATA (rElimit_height_bone='leg_upper'EEDATArElimit_radius_multiplier=1.5DATAsElimit_height_multiplier=1DATA8xsEidle_speed_threshold=0.0001 #in blender units per frameDATAHsEleg_grouped_postfixes=[['.000','.001','.002'],['.005','.004','.003']]EDATAXtEleg_grouped_start_phase=[[0,0.166,0.333],[0.5,0.66,0.833]] #phases must be between 0-1EDATA(uEleg_grouped_down_min=[1,1]DATAuEleg_grouped_down_max=[3,3]DATAh}NYuse_stabilise=TrueDATA8PTYuse_leg_sequencing=TrueDATAhvEleg_grouped_idle_max=[15,15] #the number of frames the leg can be airborne before it switches to idlingDATATvEleg_grouped_idle_place=[3,3] #the number of frames it takes to place an idle legDATAXwEuse_armature_children=TrueDATAHVEuse_key_minimal=TrueREEDATA8ćDuse_body_movement=TrueEDATA(ELuse_strict_limit=TrueEEDATAhuEbody_movement_amount=1EDATA (Eboid_size=1DATAEstart_frame=1EEDATAHLYend_frame=150EEDATA wElift_profile=[0,0.7,1,0.7,0]REEDATAxEDATAdEdef build_boids_list():DATATE boid_list=[]DATA88xE for each_object in bpy.context.selected_objects:REEDATA(xE if each_object.type=='EMPTY':EEDATA0(yE if each_object['tb_type']=='boid':EDATAHyE boid_list.append(bpy.data.objects[each_object.name])REEDATABLY return boid_listREEDATA؟YLlDATA48zEdef blend_rotations(rotation_a,rotation_b,amount):DATA8zE #amount is the amount of rot b to include in rot aEDATA,8{E rot_a_quat=rotation_a.to_quaternion()x1DATA,{E rot_b_quat=rotation_b.to_quaternion()DATA48|E rot_blend=rot_a_quat.slerp(rot_b_quat,amount)!DATA |E return rot_blend.to_euler()DATAhELDATAP(}Edef get_transform_matrix_bones(this_armature,from_name,to_name,ignore_parent):DATA8}E #transform matrix from one bone space to another...DATA4H~E data_bone = this_armature.data.bones[to_name]DATAD~E #all matrices are in armature space unless commented otherwiseDATA`XE otherloc = this_armature.pose.bones[from_name].matrix # final 4x4 mat of target, location.DATATE bonemat_local = mathutils.Matrix(data_bone.matrix_local) # self rest matrixDATAE if data_bone.parent:uleDATAdE parentposemat = mathutils.Matrix(this_armature.pose.bones[data_bone.parent.name].matrix)DATAHȁE parentbonemat = mathutils.Matrix(data_bone.parent.matrix_local)DATA 7SY else:DATA8XE parentposemat = bonemat_local.copy().identity()DATA8؂E parentbonemat = bonemat_local.copy().identity()DATA8XE if parentbonemat == parentposemat or ignore_parent:DATA8؃E newmat = bonemat_local.inverted() * otherlocREEDATA [E else:DATA<XE bonemat = parentbonemat.inverted() * bonemat_localDATALE newmat = bonemat.inverted() * parentposemat.inverted() * otherlocEEDATAE return newmat&DATA(lFDATA@Edef get_transform_matrix_bone_world(this_armature,from_name):EEDATA0E #transform matrix from one bone to world):DATA4E data_bone=this_armature.data.bones[from_name].'DATA0E data_bone_mat_local=data_bone.matrix_localDATAE if data_bone.parent:DATA E DATA8E #from parent pose bone space to armature spaceEDATAdE parentposemat = mathutils.Matrix(this_armature.pose.bones[data_bone.parent.name].matrix)DATA xRY (bDATA88E #from parent data bone space to armature spaceEDATAHE parentbonemat = mathutils.Matrix(data_bone.parent.matrix_local)DATA 8MY DATAHHE #from databone space to armature space to parent databone spaceDATAD؊E bonemat = parentbonemat.inverted() * data_bone_mat_localDATA (E (bDATA|hE #brackets contain (armature space to parent pose bone space <-> parent databone space to databone space).inverted()DATAH8E #brackets give databone space to armature space (via parent)REEDATA(ȌE #finally premultiply by world.EDATAh8E newmat = this_armature.matrix_world*(bonemat.inverted()*parentposemat.inverted()).inverted()DATA E else:DATA@E newmat=(this_armature.matrix_world*data_bone_mat_local)DATAE return newmateDATA؀EDATA8xEdef get_world_position_bone(this_armature,from_name):EEDATATE return this_armature.matrix_world*this_armature.pose.bones[from_name].matrixqq!DATAxEDATALEdef get_transform_matrix_world_bone(this_armature,to_name,ignore_parent):ntDATA08E #transform matrix from world to bone spaceDATA4E data_bone = this_armature.data.bones[to_name]DATAD8E #all matrices are in armature space unless commented otherwiseDATATȑE bonemat_local = mathutils.Matrix(data_bone.matrix_local) # self rest matrixal)DATA<hE otherloc=this_armature.matrix_world.copy().inverted()GDATAE if data_bone.parent:conDATAdhE parentposemat = mathutils.Matrix(this_armature.pose.bones[data_bone.parent.name].matrix)DATAHE parentbonemat = mathutils.Matrix(data_bone.parent.matrix_local)DATA H>D else:DATA8E parentposemat = bonemat_local.copy().identity()DATA8(E parentbonemat = bonemat_local.copy().identity()DATA8E if parentbonemat == parentposemat or ignore_parent:DATA8(E newmat = bonemat_local.inverted() * otherlocREEDATA E else:rDATA<E bonemat = parentbonemat.inverted() * bonemat_localDATAL8E newmat = bonemat.inverted() * parentposemat.inverted() * otherlocDATAE return newmatseDATAE___DATAؗEdef create_armatures(boid_list,armature_object,root_bone,boid_size,leg_grouped_postfixes,target_bone,limit_height_bone,use_armature_children):DATAQE armature_list=[]REEDATA E for each_boid in boid_list:DATA<(E if 'BRIG'+each_boid.name not in bpy.data.objects:DATA<E bpy.ops.object.select_all(action='DESELECT')DATA(HE if use_armature_children:EDATA<E for each_child in armature_object.children:DATA,HE each_child.select=TrueqDATA(țE armature_object.select=TrueDATA@8E bpy.context.scene.objects.active=armature_objectREEDATA ȜE #create a duplicateDATA48E bpy.ops.object.duplicate(linked=False)xDATA4E boid_armature=bpy.context.active_objectDATA_E #rename itEDATA88E boid_armature.name='BRIG'+each_boid.nameREEDATAXE else:EEDATADE boid_armature=bpy.data.objects['BRIG'+each_boid.name]!DATA,NY armature_list.append(boid_armature)DATA +X rDATA,XNY #each_boid.update(refresh='OBJECT')DATA,NY #each_boid.update(refresh='DATA')DATA,XNY #each_boid.update(refresh='TIME')DATA$NY bpy.context.scene.update()TDATA hE DATAPHNY boid_armature.scale=mathutils.Vector((boid_size,boid_size,boid_size))EEDATA<NY #boid_armature.location=each_boid.location.copy()DATAxNY #visual locationDATAPNY boid_armature.location=each_boid.matrix_world.copy().to_translation()EEDATA UY rDATA0NY #boid_armature.update(refresh='OBJECT')DATA0NY #boid_armature.update(refresh='DATA')DATA0NY #boid_armature.update(refresh='TIME')DATA$NY bpy.context.scene.update()nDATA xNY DATA8NY boid_armature.pose.bones[root_bone].location=\DATAXNY each_boid.matrix_world.copy().to_translation()*boid_armature.matrix_world.copy().inverted()*boid_armature.data.bones[root_bone].matrix_local.copy().inverted()DATAHNY #copy boid rotationDATANY boid_armature.pose.bones[root_bone].rotation_quaternion=(each_boid.matrix_world.copy().to_3x3()*boid_armature.matrix_world.copy().to_3x3().inverted()).to_quaternion()DATA NY rDATA0NY #boid_armature.update(refresh='OBJECT')DATA0NY #boid_armature.update(refresh='DATA')DATA0NY #boid_armature.update(refresh='TIME')DATA$NY bpy.context.scene.update()DATA NY DATAHhNY boid_armature.pose.bones[root_bone].keyframe_insert('location')DATATNY boid_armature.pose.bones[root_bone].keyframe_insert('rotation_quaternion')DATA4NY #reset feet and randomise start position...DATA4NY for leg_postfixes in leg_grouped_postfixes:DATA4NY for each_leg_postfix in leg_postfixes:DATANY boid_armature.pose.bones[target_bone+each_leg_postfix].location=boid_armature.pose.bones[limit_height_bone+each_leg_postfix].location*get_transform_matrix_bones(boid_armature,limit_height_bone+each_leg_postfix,target_bone+each_leg_postfix,False)EEDATAdhNY boid_armature.pose.bones[target_bone+each_leg_postfix].keyframe_insert('location')DATANY qqqDATAxNY return armature_list_liDATA NY DATAHNYdef build_leg_database(boid_list,armature_list,leg_grouped_postfixes,root_bone,target_bone,limit_radius_bone,limit_height_bone,leg_grouped_down_min,leg_grouped_start_phase,armature_database):DATAXNY leg_database=dict()DATA(NY print('Building Leg Datbase...')REEDATAE .DATA(NY # Armature NameDATA NY # |ZDATA NY # +leg group index eg. 0eDATA XNY # |DATA$NY # +leg postfix eg. '.001'!DATA(NY # |REEDATA,NY # +status... 0 is down, 1 is upqqqDATA8NY # +speed_multiplier (for learning step rate)EEDATANY # +lift_radiusDATA NY # +frame_state_changeEDATAX=E REEDATA<XNY for index,each_armature in enumerate(armature_list):DATA8NY print('\tArmature '+each_armature.name+'...')EEDATA,hNY leg_database[each_armature.name]=[]DATAPNY for each_group_index,leg_postfixes in enumerate(leg_grouped_postfixes):DATA@NY print('\t\tLeg group '+str(each_group_index)+'...')DATA<NY leg_database[each_armature.name].append(dict())DATALNY for postfix_index,each_leg_postfix in enumerate(leg_postfixes):DATA@HNY print('\t\t\tLeg '+str(each_leg_postfix)+'...')DATA\NY leg_database[each_armature.name][each_group_index][each_leg_postfix]=dict()DATAdNY this_leg_db=leg_database[each_armature.name][each_group_index][each_leg_postfix]DATAT8NY if leg_grouped_start_phase[each_group_index][postfix_index]<=0.5:DATADNY this_leg_db['status']=0 #0=down,1=up,2=restingDATA4hNY this_leg_db['last_status']=0DATANY this_leg_db['radius_variation']=1-(leg_grouped_start_phase[each_group_index][postfix_index]*2) #lift the leg when this proportion of the radius is exceededDATANY else:egDATADHNY this_leg_db['status']=1 #0=down,1=up,2=restingDATA4NY this_leg_db['last_status']=1qq!DATAXNY this_leg_db['radius_variation']=1-((leg_grouped_start_phase[each_group_index][postfix_index]-0.5)*2) #lift the leg when this proportion of the radius is exceededEEDATA XNY #check this...EDATA|NY this_leg_db['speed_multiplier']=armature_database[each_group_index][each_leg_postfix]['speed_multiplier']qDATAhNY this_leg_db['frame_state_change']=-1 #the frame the leg last was put down or picked upEDATA,HNY this_leg_db['idle_count']=0DATA,NY #save world space positionsDATAHNY this_leg_db['this_pos']=each_armature.pose.bones[target_bone+each_leg_postfix].location*get_transform_matrix_bone_world(each_armature,target_bone+each_leg_postfix)DATAHHNY this_leg_db['last_pos']=this_leg_db['this_pos'].copy()DATANY this_leg_db['this_limit_pos']=each_armature.pose.bones[limit_height_bone+each_leg_postfix].location*get_transform_matrix_bone_world(each_armature,limit_height_bone+each_leg_postfix))DATATNY this_leg_db['last_limit_pos']=this_leg_db['this_limit_pos'].copy()aDATAXNY this_leg_db['placed_limit_pos']=this_leg_db['this_limit_pos'].copy()q!qDATAT(NY this_leg_db['leg_distance']=0 #distance of target from limit posyfrDATA4NY this_leg_db['last_leg_distance']=0DATApHNY this_leg_db['limit_travel_distance']=0 #distance of limiter from when limiter was last placedDATA4NY this_leg_db['estimated_phase']=0[]DATANY return leg_databaseDATAE___DATANYdef build_armature_database(armature_object,limit_radius_bone,limit_height_bone,leg_grouped_postfixes,limit_radius_multiplier,limit_height_multiplier,boid_size,leg_grouped_start_phase,leg_grouped_down_min,body_bone):n,bDATAOY armature_database=[]##DATA8OY phases_lookup=[] #do [phase,[group_index,postfix]]EDATA(PY -DATA(OY print('Building Phases Lookup...')EDATALxOY for each_group_index,leg_postfixes in enumerate(leg_grouped_postfixes):DATATOY for each_leg_postfix_index,each_leg_postfix in enumerate(leg_postfixes):x][DATAOY phases_lookup.append([leg_grouped_start_phase[each_group_index][each_leg_postfix_index],[each_group_index,each_leg_postfix_index]])DATA<OY phases_lookup=sorted(phases_lookup, key=lambda a: a[0])DATAXE -DATA(OY # Leg group index DATA OY # |anDATAOY # +leg postfixDATA HOY # |DATAOY # +limit_radius DATAOY # +limit_height__DATAh|E -DATA,hOY print('Building Armature Datbase...')q!DATALOY for each_group_index,leg_postfixes in enumerate(leg_grouped_postfixes):DATA<OY print('\t\tLeg group '+str(each_group_index)+'...')DATA,OY armature_database.append(dict())ue=DATATOY for each_leg_postfix_index,each_leg_postfix in enumerate(leg_postfixes):!qqDATA<8 OY print('\t\t\tLeg '+str(each_leg_postfix)+'...')DATAL OY armature_database[each_group_index][each_leg_postfix]=dict()DATA,h OY #limit distances in world spaceDATA  OY #armature_database[each_group_index][each_leg_postfix]['limit_radius']=boid_size*((armature_object.data.bones[limit_radius_bone+each_leg_postfix].head-armature_object.data.bones[target_bone+each_leg_postfix].head)*armature_object.matrix_world).length*limit_radius_multiplierEDATAX OY target_bone_world=armature_object.pose.bones[target_bone+each_leg_postfix].location*get_transform_matrix_bone_world(armature_object,target_bone+each_leg_postfix))DATAX OY limit_radius_bone_world=armature_object.pose.bones[limit_radius_bone+each_leg_postfix].location*get_transform_matrix_bone_world(armature_object,limit_radius_bone+each_leg_postfix)DATAhOY armature_database[each_group_index][each_leg_postfix]['limit_radius']=(limit_radius_bone_world-target_bone_world).lengthREEDATAD8OY #height is in bone space ########################fixmeDATAOY armature_database[each_group_index][each_leg_postfix]['limit_height']=boid_size*(armature_object.data.bones[limit_height_bone+each_leg_postfix].tail-armature_object.data.bones[limit_height_bone+each_leg_postfix].head).length*limit_height_multiplierREEDATAOY #armature_database[each_group_index][each_leg_postfix]['speed_multiplier']=(len(leg_grouped_postfixes)-leg_grouped_down_min[each_group_index])+1REEDATAXOY armature_database[each_group_index][each_leg_postfix]['speed_multiplier']=2DATAOY armature_database[each_group_index][each_leg_postfix]['body_target_vector']=armature_object.pose.bones[target_bone+each_leg_postfix].location*get_transform_matrix_bones(armature_object,target_bone+each_leg_postfix,body_bone,False)DATA,OY #find it in the sorted phases-1DATAXhOY for each_phase_lookup_index,each_phase_lookup in enumerate(phases_lookup):DATATOY if each_phase_lookup[1]==[each_group_index,each_leg_postfix_index]:DATADOY this_phase_lookup_index=each_phase_lookup_indexDATA8OY breaknDATA,OY if this_phase_lookup_index==0:!DATA\(OY armature_database[each_group_index][each_leg_postfix]['phase_look_to']=-1!DATAOY else:reDATA08OY armature_database[each_group_index][each_leg_postfix]['phase_look_to']=[phases_lookup[each_phase_lookup_index-1][1][0],leg_grouped_postfixes[phases_lookup[each_phase_lookup_index-1][1][0]][phases_lookup[each_phase_lookup_index-1][1][1]],phases_lookup[each_phase_lookup_index-1][1][1]]REEDATA OY return armature_databaseREEDATAE -DATAD(OYdef update_armature_position(each_armature,each_boid,root_bone):q!DATADOY #move the armature root and key position and update armaturee)DATAHOY #each_armature.pose.bones[root_bone].location=each_boid.location.copy()*each_armature.matrix_world.copy().inverted()*each_armature.data.bones[root_bone].matrix_local.copy().inverted()DATAXOY each_armature.pose.bones[root_bone].location=each_boid.matrix_world.copy().to_translation()*each_armature.matrix_world.copy().inverted()*each_armature.data.bones[root_bone].matrix_local.copy().inverted()DATAxOY #copy boid rotationDATAE #each_armature.pose.bones[root_bone].rotation_quaternion=(each_boid.rotation_euler.to_matrix()*each_armature.matrix_world.copy().to_3x3().inverted()).to_quaternion()qqDATAE each_armature.pose.bones[root_bone].rotation_quaternion=(each_boid.matrix_world.copy()*each_armature.matrix_world.copy().inverted()).to_quaternion()DATAE -DATA,xE #each_armature.update(refresh='OBJECT')DATA,E #each_armature.update(refresh='DATA')EEDATA,xE #each_armature.update(refresh='TIME')EEDATA E bpy.context.scene.update()EDATAXoY -DATADhE each_armature.pose.bones[root_bone].keyframe_insert('location')DATAPE each_armature.pose.bones[root_bone].keyframe_insert('rotation_quaternion')DATA8E -DATA,E #each_armature.update(refresh='OBJECT')DATA,E #each_armature.update(refresh='DATA')EEDATA,E #each_armature.update(refresh='TIME')EDATA E bpy.context.scene.update()EDATAUY REEDATA0Edef sample_lift_profile(lift_profile,position):DATAE #position is 0-1bb_DATAhE if position>1:qDATA(ȭE position=0.9999 #float safetyEEDATA08E sample_index=position*(len(lift_profile)-1)DATA0E sample_lower_index=math.floor(sample_index)DATA08E sample_upper_index=math.ceil(sample_index)EDATA4E upper_amount=sample_index-sample_lower_indexDATAp8E sample=(lift_profile[sample_lower_index]*(1-upper_amount))+(lift_profile[sample_upper_index]*upper_amount)EDATAE return sample_iDATA(EDATAPXEdef change_leg_status(this_leg_db,status,this_frame,this_leg_history_database):DATA<E this_leg_db['last_status']=int(this_leg_db['status'])qqDATA$E this_leg_db['status']=status)DATA4E this_leg_db['frame_state_change']=this_frameDATALxE this_leg_db['placed_limit_pos']=this_leg_db['this_limit_pos'].copy()parDATA,E this_leg_db['limit_travel_distance']=0DATALE this_leg_db['radius_variation']=1-(random.random()*0.1) #for varietyhDATA48E this_leg_history_database[this_frame]=statusDATAE return this_leg_dbDATAEDATATEdef build_leg_history_database(armature_list,leg_grouped_postfixes,start_frame): DATAE #store by leg...+DATA E #frame number and statusDATA E leg_history_database=dict()DATA(E for each_armature in armature_list:DATA4hE leg_history_database[each_armature.name]=[]DATAhE for each_leg_postfix_group_index,each_leg_postfix_group in enumerate(leg_grouped_postfixes):REEDATADE leg_history_database[each_armature.name].append(dict())DATA<(E for each_leg_postfix in each_leg_postfix_group:DATApE leg_history_database[each_armature.name][each_leg_postfix_group_index][each_leg_postfix]=dict()DATAxxE leg_history_database[each_armature.name][each_leg_postfix_group_index][each_leg_postfix][start_frame]=0DATA 8E return leg_history_databaseDATAUYeg_DATA,E#def build_boid_database(armature_list):!!nDATA(E# boid_database=dict()DATA,E# for each_armature in armature_list:-=1DATA4E# boid_database[each_armature.name]=dict():DATATE# boid_database[each_armature.name]['last_pos']=mathutils.Vector((0,0,0))qqqDATAP8E# boid_database[each_armature.name]['last_rot']=mathutils.Euler((0,0,0))DATA ؿE anDATA 8E ZDATAEDATA@E#---------------------------------------------------end defsREEDATAHEH+DATA(E#collect boidsDATA Eprint('Collecting Boids...')#DATA Eboid_list=build_boids_list()eDATA,hEarmature_object=bpy.data.objects[armature]#DATA0Ebpy.context.scene.frame_set(frame=start_frame)EDATAhEarmature_list=create_armatures(boid_list,armature_object,root_bone,boid_size,leg_grouped_postfixes,target_bone,limit_height_bone,use_armature_children)DATA`HEarmature_database=build_armature_database(armature_object,limit_radius_bone,limit_height_bone,DATA\E leg_grouped_postfixes,limit_radius_multiplier,REEDATAhE limit_height_multiplier,boid_size,leg_grouped_start_phase,DATALXE leg_grouped_down_min,body_bone)EEDATAEleg_database=build_leg_database(boid_list,armature_list,leg_grouped_postfixes,root_bone,target_bone,limit_radius_bone,limit_height_bone,leg_grouped_down_min,leg_grouped_start_phase,armature_database)DATAdEleg_history_database=build_leg_history_database(armature_list,leg_grouped_postfixes,start_frame))DATAErewind_keys_list=[]DATAxYTYDATA4Efor this_frame in range(start_frame,end_frame+1):meDATAE REEDATA4E if use_key_minimal and len(rewind_keys_list)>0:DATA$E refreshed_armature_list=[])DATADE print(str(len(rewind_keys_list))+' holding keys to add...')DATA8OY bpy.context.scene.frame_set(frame=this_frame-2)DATA4hmF for each_rewind_key in rewind_keys_list:DATAHmF if each_rewind_key[0].name not in refreshed_armature_list:EDATA<xmF each_rewind_key[0].update(refresh='OBJECT')DATA<mF each_rewind_key[0].update(refresh='DATA')DATA<mF each_rewind_key[0].update(refresh='TIME')DATAH(mF refreshed_armature_list.append(each_rewind_key[0].name)DATAE each_rewind_key[0].pose.bones[each_rewind_key[1]].location=each_rewind_key[2]*get_transform_matrix_world_bone(each_rewind_key[0],each_rewind_key[1],False)DATA\E each_rewind_key[0].pose.bones[each_rewind_key[1]].keyframe_insert('location'))DATAE rewind_keys_list=[]DATA (E lseDATAaY REEDATA,E print('Frame '+str(this_frame)+'...')!nDATA~E REEDATA$E #--------------------set frameDATA4xE bpy.context.scene.frame_set(frame=this_frame)DATA(RY REEDATA<E for index,each_armature in enumerate(armature_list):'..DATA E DATA$E each_boid=boid_list[index]DATA XE rDATADE update_armature_position(each_armature,each_boid,root_bone)DATA HE DATA$E legs_down_list_combined=[]lDATA$E legs_up_list_combined=[]...DATA E rDATAE #for each leg groupDATAPXE for each_group_index,leg_postfixes in enumerate(leg_grouped_postfixes):DATAE legs_down=0DATAPXE #the leg whose limiter has moved the furthest since it was placesEEDATA0E leg_max_limit_travel_down_value=-1EDATA0xE leg_max_limit_travel_up_value=-1#DATA0E leg_max_limit_travel_down_index=-1EDATA0xE leg_max_limit_travel_up_index=-1DATAE REEDATA XE legs_down_list=[]EEDATAE legs_up_list=[]DATATYDATA8E #for each legDATA4E for each_leg_postfix in leg_postfixes:DATA(E qqqDATAdE this_leg_db=leg_database[each_armature.name][each_group_index][each_leg_postfix]DATAH8E this_leg_db['last_status']=int(this_leg_db['status'])DATA0E #update this pos and last posEEDATAHHE this_leg_db['last_pos']=this_leg_db['this_pos'].copy()DATAE #this_leg_db['this_pos']=each_armature.pose.bones[target_bone+each_leg_postfix].location*get_transform_matrix_bone_world(each_armature,target_bone+each_leg_postfix)qqqDATATE this_leg_db['last_limit_pos']=this_leg_db['this_limit_pos'].copy()uDATAxE this_leg_db['this_limit_pos']=each_armature.pose.bones[limit_height_bone+each_leg_postfix].location*get_transform_matrix_bone_world(each_armature,limit_height_bone+each_leg_postfix)DATAPE this_leg_db['last_leg_distance']=this_leg_db['leg_distance']DATAl(E this_leg_db['leg_distance']=(this_leg_db['this_pos']-this_leg_db['this_limit_pos']).lengthDATA|E this_leg_db['limit_travel_distance']=(this_leg_db['placed_limit_pos']-this_leg_db['this_limit_pos']).lengthDATA`E #find out which leg has been on the ground drifting for longest and the reverseDATAhE DATA0E if this_leg_db['status']==0:#DATA$HE legs_down+=1REEDATAtE legs_down_list.append([each_leg_postfix,this_leg_db['limit_travel_distance'],each_group_index])DATA0xE elif this_leg_db['status']==1:EDATAtE legs_up_list.append([each_leg_postfix,this_leg_db['limit_travel_distance'],each_group_index])!DATAE .poDATA$E if use_leg_sequencing:#DATA8E legs_down_list_combined+=legs_down_listDATA4E legs_up_list_combined+=legs_up_listDATAdE legs_down_list=sorted(legs_down_list, key=lambda leg_limit_data: leg_limit_data[1])DATAl8E legs_up_list=sorted(legs_up_list, key=lambda leg_limit_data: leg_limit_data[1]) DATAE REEDATA4XE for each_leg_postfix in leg_postfixes:DATAE ___DATAd8E this_leg_db=leg_database[each_armature.name][each_group_index][each_leg_postfix]###DATAtE this_leg_history_db=leg_history_database[each_armature.name][each_group_index][each_leg_postfix]])DATAE this_limit_radius=armature_database[each_group_index][each_leg_postfix]['limit_radius']*this_leg_db['radius_variation']DATAxE #--------------------------------------------------------------------------------------------------------------DATAXHE #code to force pick up and put down if the IK limit has been exceededinDATAE qq!DATADHE if this_leg_db['leg_distance']>=this_limit_radius:DATAE DATA48E if this_leg_db['status']==0:stDATAhE #is the vector from the foot to the centre the same as the direction of travelDATAhhE direction_of_travel=this_leg_db['this_limit_pos']-this_leg_db['last_limit_pos']DATA`E foot_to_centre=this_leg_db['this_limit_pos']-this_leg_db['this_pos']REEDATAXE if direction_of_travel.length>0 and foot_to_centre.length>0:t_cDATA\hE if direction_of_travel.angle(foot_to_centre)0:DATATL #print('min exceeded: must place a leg!')g_DATA`(L #pick the leg with the largest distance travelled sinceDATAL leg_to_set_down=leg_database[each_armature.name][each_group_index][legs_up_list[0][0]]qDATAL leg_to_set_down_history=leg_history_database[each_armature.name][each_group_index][legs_up_list[0][0]]DATAL leg_to_set_down=change_leg_status(leg_to_set_down,0,this_frame,leg_to_set_down_history)DATAHXL #and hurry up the current legDATA8L legs_down+=1REEDATAL _DATA4hL elif this_leg_db['status']==1:DATA4L #print('force place leg')DATAhh L direction_of_travel=this_leg_db['this_limit_pos']-this_leg_db['last_limit_pos']DATA` L centre_to_foot=this_leg_db['this_pos']-this_leg_db['this_limit_pos']seDATAX L if direction_of_travel.length>0 and centre_to_foot.length>0:ildDATA\h L if direction_of_travel.angle(centre_to_foot)leg_grouped_down_max[each_group_index] and len(legs_down_list)>0:DATATL #print('max exceeded: must lift a leg!')!qqDATA@L #as above but opposite DATAHL leg_to_pick_up=leg_database[each_armature.name][each_group_index][legs_down_list[0][0]]DATAL leg_to_pick_up_history=leg_history_database[each_armature.name][each_group_index][legs_down_list[0][0]]DATAL leg_to_pick_up=change_leg_status(leg_to_pick_up,1,this_frame,leg_to_pick_up_history)lDATA`L #the last leg which was set down should be slowed upDATA8xL legs_down-=1REEDATAL DATA4hL elif this_leg_db['status']==2:nDATATL #this leg was on its way down, need to quickly change tack]DATAdL this_leg_db=change_leg_status(this_leg_db,0,this_frame,this_leg_history_db)DATA8L DATA,L if use_strict_limit:r DATA0(L #normalise the positionDATAL this_leg_db['this_pos']=((this_leg_db['this_pos']-this_leg_db['this_limit_pos']).normalize()*this_limit_radius)+this_leg_db['this_limit_pos']DATAL EEDATA$L #leg animation codeDATA@hL #---------------------------------------------EDATA0L if this_leg_db['status']==0:EDATA0xL #stick the leg where it isEDATAL each_armature.pose.bones[target_bone+each_leg_postfix].location=this_leg_db['this_pos']*get_transform_matrix_world_bone(each_armature,target_bone+each_leg_postfix,False)DATALL elif this_leg_db['status']==1 or this_leg_db['status']==2:DATA\L vector_to_centre=this_leg_db['this_limit_pos']-this_leg_db['this_pos']DATA`XL limit_vector=this_leg_db['this_limit_pos']-this_leg_db['last_limit_pos']ceDATAL if limit_vector.length>0 and vector_to_centre.length>limit_vector.length and vector_to_centre.angle(limit_vector)leg_grouped_idle_place[each_group_index]:DATAh#L this_leg_db=change_leg_status(this_leg_db,0,this_frame,this_leg_history_db)DATAx$L DATAx$L this_leg_db['this_pos']=this_leg_db['this_pos']+(desired_vector*this_leg_db['speed_multiplier'])REEDATA%L each_armature.pose.bones[target_bone+each_leg_postfix].location=this_leg_db['this_pos']*get_transform_matrix_world_bone(each_armature,target_bone+each_leg_postfix,False)EDATA&L aseDATA'L DATA'L if (not use_key_minimal) or (use_key_minimal and this_leg_db['status']!=this_leg_db['last_status']) or this_frame==end_frame or this_frame==start_frame:e):DATAl(L each_armature.pose.bones[target_bone+each_leg_postfix].keyframe_insert('location'))DATAH)L qqqDATA@)L #-------------------------------------------REEDATA H*L #detect idle)EDATAp*L if (this_leg_db['this_limit_pos']-this_leg_db['last_limit_pos']).lengthleg_grouped_idle_max[each_group_index] or this_leg_db['idle_count']>1) and this_leg_db['status']==1:DATA`(.L this_leg_db=change_leg_status(this_leg_db,2,this_frame,this_leg_history_db)DATA.L DATA8/L qqqDATA,/L #-----------------------lllDATA(0L #debugEDATAl0L each_armature.pose.bones[target_bone+each_leg_postfix]['aw_status']=this_leg_db['status']-DATAhH1L each_armature.pose.bones[target_bone+each_leg_postfix].keyframe_insert('["aw_status"]')DATA1L (DATA(X2L #last thing to checkREEDATAh2L #-------------------------------------------------------------------------------------EDATA\x3L if use_key_minimal and this_leg_db['status']!=this_leg_db['last_status']:--DATA@(4L #add a holding key on the previous frame--DATAt4L rewind_keys_list.append([each_armature,target_bone+each_leg_postfix,this_leg_db['last_pos']])EDATAx5L DATAE DATA5L !!qDATA 86L #----------------------DATA6L #leg sequencingDATA 7L if use_leg_sequencing:DATALx7L #calculate the 'estimated phases' of all legs in all leg groupsDATA88L #these are a rough order of all the legs.EEDATAt8L legs_down_list_combined=sorted(legs_down_list_combined, key=lambda leg_limit_data: leg_limit_data[1])>DATApX9L legs_up_list_combined=sorted(legs_up_list_combined, key=lambda leg_limit_data: leg_limit_data[1])DATAX:L for each_group_index,leg_postfixes in enumerate(leg_grouped_postfixes): DATA\:L for each_leg_postfix_index,each_leg_postfix in enumerate(leg_postfixes):s']DATA h;L #phasingREEDATAh;L this_leg_db=leg_database[each_armature.name][each_group_index][each_leg_postfix]REEDATA<<L #------------------------------------!DATA$=L #estimate phaseDATA8=L if this_leg_db['last_status']==0:EEDATA`>L for index,each_leg_limit_data in enumerate(legs_down_list_combined):REEDATAx>L if each_leg_limit_data[0]==each_leg_postfix and each_leg_limit_data[2]==each_group_index:EEDATAHx?L this_leg_db['estimated_phase']=indexpsDATA(@L breakEEDATA8x@L elif this_leg_db['last_status']==1:DATA\@L for index,each_leg_limit_data in enumerate(legs_up_list_combined):DATAxAL if each_leg_limit_data[0]==each_leg_postfix and each_leg_limit_data[2]==each_group_index:EEDATAdhBL this_leg_db['estimated_phase']=len(legs_down_list_combined)+index!DATA(CL breakEEDATA8CL elif this_leg_db['last_status']==2:DATApDL this_leg_db['estimated_phase']=len(legs_down_list_combined)+len(legs_up_list_combined)DATA DL ()DATA<8EL #print(this_leg_db['estimated_phase'])DATAEL REEDATAL(FL #now see if the leg is behind or in front of where it should beDATA0FL #and adjust its speed accordinglyEDATA4HGL #the '0 phased' leg never gets adjustedDATAXGL for each_group_index,leg_postfixes in enumerate(leg_grouped_postfixes): DATA\hHL for each_leg_postfix_index,each_leg_postfix in enumerate(leg_postfixes): upDATA4IL #do not adjust the first leg-=1DATAdIL if armature_database[each_group_index][each_leg_postfix]['phase_look_to']!=-1:DATAlHJL this_leg_db=leg_database[each_armature.name][each_group_index][each_leg_postfix] DATAKL target_leg_db=leg_database[each_armature.name][armature_database[each_group_index][each_leg_postfix]['phase_look_to'][0]][armature_database[each_group_index][each_leg_postfix]['phase_look_to'][1]]EEDATApE 0DATA88LL #find smallest phase differenceDATApLL phase_difference=(target_leg_db['estimated_phase']+1)-this_leg_db['estimated_phase']7DATA>D phase_difference_backward=phase_difference-(len(legs_down_list_combined)+len(legs_up_list_combined))on_DATA|?D phase_difference_forward=phase_difference+(len(legs_down_list_combined)+len(legs_up_list_combined))DATA@D tabDATAAD #phase difference is what needs to be done to get this_leg in sync with the next leg in the sorted phase listEEDATADAD #do the one with the minimum change neededDATA`hBD #probably quicker to do lots of ifs than to use min with a lambda key?EDATACD if math.fabs(phase_difference)<=math.fabs(phase_difference_backward) and math.fabs(phase_difference)<=math.fabs(phase_difference_forward):DATADDD this_phase_difference=phase_differencedDATADD elif math.fabs(phase_difference_forward)<=math.fabs(phase_difference_backward) and math.fabs(phase_difference_forward)<=math.fabs(phase_difference):DATALED this_phase_difference=phase_difference_forwardDATA 8FD else:EEDATALFD this_phase_difference=phase_difference_backwardDATA HGD REEDATA\GD # <0 indicates it needs to earlier in the ordered list of phasingsEDATA4hHD if this_phase_difference<0:DATA(HD #speedupt:DATAXID this_leg_db['speed_multiplier']=armature_database[each_group_index][each_leg_postfix]['speed_multiplier']*1.1!nDATA 8JD else:DATA(JD #slowdownEEDATAKD this_leg_db['speed_multiplier']=armature_database[each_group_index][each_leg_postfix]['speed_multiplier']*0.9[0DATAHr^Y DATAKD .')DATAhLD DATA LD#------------------------------DATA@8MD#body movements and leg height animation based on history dbDATAMD DATA4(NDfor this_frame in range(start_frame,end_frame+1):qDATA,ND print('Frame '+str(this_frame)+'...')l!DATAaY 0DATA$(OD #--------------------set frameDATA4OD bpy.context.scene.frame_set(frame=this_frame)rDATAKY hEDATA<PD for index,each_armature in enumerate(armature_list): )DATAPD #is this needed?t()DATA4QD #only if the boid is not on the z plane?DATA0QD #each_armature.update(refresh='OBJECT')DATA0RD #each_armature.update(refresh='DATA')DATA0RD #each_armature.update(refresh='TIME')DATASD #body movementDATA0xSD body_movement=mathutils.Vector((0,0,0))DATASD #for each leg groupDATAPhTD for each_group_index,leg_postfixes in enumerate(leg_grouped_postfixes):DATA4UD for each_leg_postfix in leg_postfixes:DATA4UD #find the current status in the dbDATAtVD this_leg_history_db=leg_history_database[each_armature.name][each_group_index][each_leg_postfix]EDATAdVD this_leg_db=leg_database[each_armature.name][each_group_index][each_leg_postfix]DATAxWD DATADWD recorded_frames=list(this_leg_history_db.keys())qDATA(hXD recorded_frames.sort()EDATAXD DATAL8YD for recorded_frames_index in range(0,len(recorded_frames)):DATAHYD if recorded_frames_indexthis_frame:DATAX8[D start_phase_frame=recorded_frames[recorded_frames_index]DATAX[D end_phase_frame=recorded_frames[recorded_frames_index+1]DATA$x\D breakDATA\D else:]DATATX]D start_phase_frame=recorded_frames[recorded_frames_index]DATA4]D end_phase_frame=end_frameEEDATA@x^D this_leg_history_db[end_phase_frame]=0EDATA _D breakEEDATAx_D DATA@_D if this_leg_history_db[start_phase_frame]==0:EEDATA(h`D #leg is stationaryEDATA,`D lift_profile_result=0DATA$XaD #print('0-0')DATA@aD elif this_leg_history_db[start_phase_frame]==1:DATA@XbD if this_leg_history_db[end_phase_frame]==0:DATA<bD #leg is moving across normal arc###DATAxxcD lift_profile_position=((this_frame+1)-start_phase_frame)/(end_phase_frame-start_phase_frame)REEDATAd8dD lift_profile_result=sample_lift_profile(lift_profile,lift_profile_position)DATA(dD #print('1-0')EEDATADXeD elif this_leg_history_db[end_phase_frame]==2:DATA<eD #leg is moving up to peak of arcefsDATA|xfD lift_profile_position=((this_frame+1)-start_phase_frame)/((end_phase_frame-start_phase_frame)*2)DATAdHgD lift_profile_result=sample_lift_profile(lift_profile,lift_profile_position)DATA(gD #print('1-2')EEDATA@hhD elif this_leg_history_db[start_phase_frame]==2:DATA|hD lift_profile_position=0.5+(((this_frame+1)-start_phase_frame)/((end_phase_frame-start_phase_frame)*2))DATA`iD lift_profile_result=sample_lift_profile(lift_profile,lift_profile_position)DATA<xjD #leg is on way down from peak of arcl!DATA$kD #print('2-0')DATAXE___DATAxkD if this_frame==start_phase_frame or this_frame==end_phase_frame or this_frame==int((start_phase_frame+end_phase_frame)/2):[DATA0XlD this_frame_key_minimal=TrueDATAlD else:DATA48mD this_frame_key_minimal=FalseDATAmD DATA\nD if (not use_key_minimal) or (use_key_minimal and this_frame_key_minimal):DATAlnD each_armature.pose.bones[target_bone+each_leg_postfix].location[1]+=lift_profile_resultDATAhoD each_armature.pose.bones[target_bone+each_leg_postfix].keyframe_insert('location')EDATA8pD DATA(pD if use_body_movement:EEDATA@qD #a lifted leg draws the body away from itEEDATAqD body_movement+=lift_profile_result*armature_database[each_group_index][each_leg_postfix]['body_target_vector']*-0.1*body_movement_amountREEDATArD DATArD #body movementDATA HsD if use_body_movement:EEDATAsD each_armature.pose.bones[body_bone].location=(each_armature.pose.bones[body_bone].location*0.5)+(body_movement*0.5)DATAtD if this_frame==start_phase_frame or this_frame==end_phase_frame or this_frame==int((start_phase_frame+end_phase_frame)/2):EDATA,XuD this_frame_key_minimal=TrueDATAuD else:DATA08vD this_frame_key_minimal=FalseREEDATAvD DATAXwD if (not use_key_minimal) or (use_key_minimal and this_frame_key_minimal):DATAPwD each_armature.pose.bones[body_bone].keyframe_insert('location')DATA XxD rTX}DExUYTXbuild boids simple CP~DE~D~DEDATA(~Dx~DEFREEDATA(x~D~D~DXE FREEDATA(~DXDx~DH'RYFREEDATA(XDD~D(EFREEDATA(D8DXDE+FREEDATA(8DDD8E3FREEDATA(DD8DE(FREEDATA(DDD8E$FREEDATA(DDDE-FREEDATA(DhDD(EoFREEDATA(hD؂DDE<FREEDATA(؂DHDhDxE&FREEDATA(HDD؂DE;FREEDATA(D(DHDxE5FREEDATA((DDDE'FREEDATA(DD(DhE DATA(DxDDȜEFREEDATA(xDDD8E;FREEDATA(DXDxDȝE5FREEDATA(XDȆDDHE=FREEDATA(ȆD8DXD؞EFREEDATA(8DDȆDHEFREEDATA(DD8DEFREEDATA(DDDEFREEDATA(DDDhE4FREEDATA(DhDDE%FREEDATA(hD؉DDXE)FREEDATA(؉DHDhDءEFREEDATA(HDD؉DXOYFREEDATA(D(DHDEFREEDATA((DDD8EFREEDATA(DhE(DE+DATA(hE؏ED(E9DATA(؏EHEhEHmFDATA(HEE؏EE!9DATA(E(EHEE1DATA((EEEE2n0DATA(EE(EE2DATA(ExEEE3o0DATA(xEEEE4DATA(EXExEE2DATA(XEȓEEE.DATA(ȓE8EXEE0DATA(8EEȓEE2DATA(EE8EXE(DATA(EEEبE)2DATA(EEXEFREEDATAEimport bpy,randomDATAXEboid_size=0.1dDATAH'RY tEDATA(E REEDATA,Edef clean_boid_orientators(selection_list):DATA48E #delete children with attribute ['tb_surf_loc']DATA,E new_selection_list=selection_list[:]r DATA(8E for each_boid in selection_list:DATA0E for each_child in each_boid.children:EEDATAp(E if 'tb_surf_loc' in each_child and ('tb_type' in each_child and each_child['tb_type']=='surf_loc'):DATA@E bpy.ops.object.select_all(action='DESELECT')DATA(xE each_child.select=TrueEDATA<E bpy.context.scene.objects.active=each_childDATA8xE new_selection_list.remove(each_child)EDATA(E bpy.ops.object.delete()DATAhE ;DATAȜE list_constraints=[]DATA<8E for each_constraint in list(each_boid.constraints):DATA8ȝE if each_constraint.name=='tb_surf_const':DATA@HE each_boid.constraints.remove(each_constraint)DATA ؞E return new_selection_listEEDATAHE Y6DATAEdef build_boids_list():DATAE boid_list=[]DATA8hE for each_object in bpy.context.selected_objects:REEDATA(E if each_object.type=='EMPTY':EEDATA,XE boid_list.append(each_object)DATAءE return boid_listREEDATAXOYDATAEDATA 8Eboid_list=build_boids_list()REEDATA,Eboid_list=clean_boid_orientators(boid_list)DATA (Efor each_object in boid_list:DATAHmFDATA$E each_object['tb_type']='boid'DATA4E each_object['tb_em_herd']=0.1*random.random()DATA4E each_object['tb_em_panic']=0.1*random.random()DATA4E each_object['tb_em_sleep']=0.1*random.random()DATA4E each_object['tb_em_centre']=0.1*random.random()DATA8E each_object['tb_em_cluster']=0.1*random.random()DATA4E each_object['tb_em_repel']=0.1*random.random()DATA0E #velocity=speed*normalized rotation vectorEDATA4E each_object['tb_speed']=0.03*random.random()DATAE MDATA,XE each_object.empty_draw_type='ARROWS'n2DATA,بE each_object.empty_draw_size=boid_sizeDATAXEmpoTXEE}DTXclear actionsEHEHEHEHEDATA(EhEE FREEDATA(hEدEEEFREEDATA(دEHEhEhE$FREEDATA(HEدEرE#FREEDATA Eimport bpyDATAE!DATA(hEfor each_action in bpy.data.actions:REEDATA$رE each_action.use_fake_user=FalseTXEEETXclear armaturesExExExEEDATA(EEE FREEDATA(ExEEHEFREEDATA(xEEEEFREEDATA(EXExEEFREEDATA(XEȹEEHEFREEDATA(ȹE8EXEE0FREEDATA(8EEȹE(EGFREEDATA(EE8EE/FREEDATA(EEE8E*FREEDATA(EEEE'FREEDATA(EhEE(EFREEDATA(hEؼEEE,FREEDATA(ؼEHEhEEFREEDATA(HEEؼEXEFREEDATA(E(EHEEFREEDATA((EEE8E DATA(EE(EEFREEDATA(ExEEEFREEDATA(xEE8EFREEDATA Eimport bpyDATAHEmpoDATAEexclude_name="Armature"DATAE/DATAHEdelete_list=[]EDATA4Efor each_object in bpy.context.selected_objects:DATAH(E if each_object.type=='ARMATURE' and each_object.name!=exclude_name:DATA0E for each_child in each_object.children:DATA,8E delete_list.append(each_child)DATA(E delete_list.append(each_object)DATA (E DATA0Ebpy.ops.object.select_all(action='DESELECT')DATAEmptDATA XEfor each_object in delete_list:DATAE each_object.select=TrueDATA8E aEDATAEbpy.ops.object.delete()DATAEameDATA8EmpoTXEXI LETXkeyframe decimateExExExEE LDATA(EHEE FREEDATA(HEEEHEFREEDATA(E(EHEEFREEDATA((EEEE FREEDATA(EE(EHE FREEDATA(ExEEEqqDATA(xEEEE4FREEDATA(EXExEEFREEDATA(XEEEEFREEDATA(E8EXEHEFREEDATA(8EEEEFREEDATA(EE8EE) '+DATA(EEExE 'EDATA(EEEE"FREEDATA(EhEE8E1FREEDATA(hEEEEFREEDATA(EHEhEEFREEDATA(HEEEhE4FREEDATA(E(EHEE/FREEDATA((EEExC L5FREEDATA(EE(EC LFREEDATA(ExEEHD L FREEDATA(xEED LFREEDATA Eimport bpyDATAHEskip=1DATAEDATAEstart_frame=1EEDATAHEend_frame=100EEDATAEthis_frame=start_frameEDATA8E#!!!!!!!!!!!!!!!!!!!!! filter euler rotations first!DATAE% DATA Ewhile this_frame<=end_frame:REEDATAHE REEDATAE #set frameEDATA,E print('Frame '+str(this_frame)+'...')6DATAxE EDATA$E #--------------------set framemDATA48E bpy.context.scene.frame_set(frame=this_frame)DATAE seDATAE #decimate keysDATA8hE for each_object in bpy.context.selected_objects:DATA0E each_object.keyframe_delete('location')DATA8xC L each_object.keyframe_delete('rotation_euler')EEDATAC L EEDATAHD L #move onREEDATAD L this_frame+=1+skipETXXI LETXsmooth_fcurvesXJ LȂ LV LV L(EDATA(XJ LJ L8 L,maDATA(J L8K LXJ L L,mEDATA(8K LK LJ L L FREEDATA(K LL L8K LX L EEDATA(L LL LK L Lon:DATA(L LL LL L LFREEDATA(L LhM LL Lh L FREEDATA(hM LM LL Lȅ LFREEDATA(M LHN LhM L L!EDATA(HN LN LM Lx Lon:DATA(N L(O LHN L؆ LFREEDATA((O LO LN L( LEEDATA(O LP L(O L LH=1EDATA(P LxP LO L( LPFREEDATA(xP LP LP LȈ L%FREEDATA(P LXQ LxP L8 LDATA(XQ LQ LP L LFREEDATA(Q L8R LXQ L L FREEDATA(8R LR LQ LX L$FREEDATA(R LS L8R LȊ L$FREEDATA(S LS LR L8 L DATA(S LS LS L LFREEDATA(S LhT LS L LFREEDATA(hT LT LS Lh LFREEDATA(T LHU LhT L L&FREEDATA(HU LU LT L( L5 DATA(U L(V LHU L L3FREEDATA((V LV LU L( L5FREEDATA(V LW L(V L LFREEDATA(W LxW LV L LFREEDATA(xW LW LW Lh L9FREEDATA(W LXX LxW L LFREEDATA(XX LX LW LX LFREEDATA(X L8Y LXX L L;FREEDATA(8Y LY LX LH L&FREEDATA(Y LZ L8Y L LCFREEDATA(Z LZ LY LH L%FREEDATA(Z LZ LZ L L,FREEDATA(Z Lh[ LZ LXEwhiDATA(h[ L[ LZ LXEGFREEDATA([ LH\ Lh[ LEBFREEDATA(H\ L\ L[ LxEwhiDATA(\ L(] LH\ LxEGwhEDATA((] L] L\ LEBEEDATA(] L^ L(] LEEEDATA(^ Lx^ L] LEFREEDATA(x^ L^ L^ LXEVFREEDATA(^ LX_ Lx^ LEVFREEDATA(X_ L_ L^ LEbFREEDATA(_ L8` LX_ LHEcFREEDATA(8` L` L_ LEcFREEDATA(` La L8` LEiFREEDATA(a La L` LhEHFREEDATA(a La La LE>FREEDATA(a Lhb La LEJDATA(hb Lb La L8EkDATA(b LHc Lhb LEHFREEDATA(Hc Lc Lb LE>EEDATA(c L(d LHc L(EJREEDATA((d Ld Lc LEFREEDATA(d Le L(d L8E:FREEDATA(e Lxe Ld LELFREEDATA(xe Le Le LhEFREEDATA(e LXf Lxe LE+EEDATA(Xf Lf Le LHE on:DATA(f L8g LXf LEon:DATA(8g Lg Lf LE=1EDATA(g Lh L8g LhE,FREEDATA(h Lh Lg LECFREEDATA(h Lh Lh LxECon:DATA(h Lhi Lh LE<on:DATA(hi Li Lh L8 LFREEDATA(i LHj Lhi LEREEDATA(Hj Lj Li LE5REEDATA(j L(k LHj LxE;FREEDATA((k Lk Lj LE5qqqqDATA(k Ll L(k LE._couDATA(l Lxl Lk LEqqqqDATA(xl Ll Ll LhEFREEDATA(l LXm Lxl LEEFREEDATA(Xm Lm Ll LXEFREEDATA(m L8n LXm LEDREEDATA(8n Ln Lm LHEFREEDATA(n Lo L8n LEEEDATA(o Lo Ln LE` DATA(o Lo Lo LxEDATA(o Lhp Lo LE0),DATA(hp Lp Lo LHE&DATA(p LHq Lhp LE5/)DATA(Hq Lq Lp L8EDATA(q L(r LHq LE0DATA((r Lr Lq LEDATA(r Ls L(r LE7DATA(s Lxs Lr LE%DATA(xs Ls Ls LxE=_namDATA(s LXt Lxs LE=DATA(Xt Lt Ls LE=DATA(t L8u LXt L(EDATA(8u Lu Lt LEDATA(u Lv L8u LE&DATA(v Lv Lu LhEDATA(v Lv Lv LE&DATA(v Lhw Lv L8EEDATA(hw Lw Lv LEDATA(w LHx Lhw L(E0DATA(Hx Lx Lw LEDATA(x L(y LHx L E7DATA((y Ly Lx L EDATA(y Lz L(y L E=DATA(z Lxz Ly L E=DATA(xz Lz Lz L( E=DATA(z LX{ Lxz L EDATA(X{ L{ Lz L( E o_roDATA({ L8| LX{ L E0] DATA(8| L| L{ L E*ta_fDATA(| L} L8| Lh E4m_loDATA(} L} L| L E3ion.DATA(} L} L} LhE DATA(} Lh~ L} LEt DATA(h~ L~ L} L(E-tionDATA(~ LH Lh~ LE- DATA(H L L~ L(E-rameDATA( L( LH LE:8.DATA(( L L L8E9DATA( L L( LE0DATA( Lx L L(EDATA(x L L LE2DATA( LX Lx LE&DATA(X LȂ L LxEDATA(Ȃ LX LE ,maDATA8 Limport bpy,mathutils,mathDATA LmpoDATA Lstart_frame=1hDATAX Lend_frame=150EDATA LmpoDATA Lbefore_data=10EDATAh Lafter_data=10EDATAȅ LBDATA Ldo_location=FalseDATAx Ldo_rotation=TrueDATA؆ LmpoDATA( L#smoothing for boidsREEDATAL Lfor object_count,each_object in enumerate(bpy.context.selected_objects):DATAT( L print(str(object_count)+' of '+str(len(bpy.context.selected_objects))+'...')(36DATA(Ȉ L #load all of the data into memoryDATA8 L locations=[]DATA L rotations=[]DATA L #debugsDATA(X L axes_flip_positive_count=[0,0,0]DATA(Ȋ L axes_flip_negative_count=[0,0,0]=DATA$8 L axes_flip_none_count=[0,0,0],0]DATA L frames_read=0DATA L frames_written=0REEDATAh L REEDATA( L print('Object :'+each_object.name)DATA8( L for this_frame in range(start_frame,end_frame+1):DATA4 L #print('\tLoading frame :'+str(this_frame))DATA8( L bpy.context.scene.frame_set(frame=this_frame)EEDATA L ta=DATA L if do_location:DATA<h L locations.append(each_object.location.copy())DATA L q!nDATAX L if do_rotation:DATA< L this_rotation=each_object.rotation_euler.copy()DATA(H L if this_frame>start_frame:DATAD L last_rotation=rotations[this_frame-(start_frame+1)]DATA(H L #check for continuityEEDATA0 L for each_axes in range(0,3):REEDATAXE while math.fabs((this_rotation[each_axes]-math.radians(360))-last_rotation[each_axes])0 and countس]?hh!"3?س]?i!3 h@h@h@h@/?>س]?hh!"3?س]?i!3h@h@? ?/>?=/?=??=1=???DATA(EhEEleg_limit.000 ?H?H?H?H?/?>س]?hh!"3?س]?i!30H?H?H?H?/?>س]?hh!"3?س]?i!3H?H?? ?/>?=/?=??=1=???DATA(hEEEleg_target.001 ?I@I@^3/?>س]?Hd3?س]?&"3 I@I@2^3/?>س]?Hd3?س]?&"3I@? ?/>?=/?=??=1=???DATA(EHEhEleg_limit.001 ? @ @^3/?>س]?Hd3?س]?&"30 @ @2^3/?>س]?Hd3?س]?&"3 @? ?/>?=/?=??=1=???DATA(HE EEleg_target.002 ?h@hh@h/?>س]?hh!"3?س]?i!3 h@hh@h/?>س]?hh!"3?س]?i!3h@h? ?/>?=/?=??=1=???DATA( E("EHEleg_limit.002 ?H?HϿH?HϿ/?>س]?hh!"3?س]?i!30H?HϿH?HϿ/?>س]?hh!"3?س]?i!3H?HϿ? ?/>?=/?=??=1=???DATA(("E#E Eleg_target.003 ?hhhh/?>س]?hh!"3?س]?i!3 hhhh/?>س]?hh!"3?س]?i!3hh? ?/>?=/?=??=1=???DATA(#E%E("Eleg_limit.003 ?HϿGϿHϿGϿ/?>س]?hh!"3?س]?i!30HϿGϿHϿGϿ/?>س]?hh!"3?س]?i!3HϿGϿ? ?/>?=/?=??=1=???DATA(%Ex&E#Eleg_target.004 ?II^3/?>س]?Hd3?س]?&"3 II2^3/?>س]?Hd3?س]?&"3I? ?/>?=/?=??=1=???DATA(x&E'E%Eleg_limit.004 ? 4 i74/?>س]?Fd3?س]?&"30 4 L74/?>س]?Fd3?س]?&"3 4? ?/>?=/?=??=1=???DATA('EX)Ex&Eleg_target.005 ?hh@hh@/?>س]?hh!"3?س]?i!3 hh@hh@/?>س]?hh!"3?س]?i!3hh@? ?/>?=/?=??=1=???DATA(X)E*E'Eleg_limit.005 ?GϿH?GϿH?/?>س]?hh!"3?س]?i!30GϿH?GϿH?/?>س]?hh!"3?س]?i!3GϿH?? ?/>?=/?=??=1=???DATA(*EX)E8,EdEroot&>?5??0&>?5???&=?=&>=??"RK="R<???DATA(8,E]E*E-EWEbodyNJ55&)?c5&??p33ŵ5Z4?33V4 Nﴳ 4)?\444??p33&0 &0 5Z4?33Y4Nﴳ 4)??5+=?=+>=??}5?5?> r9444?$63?*63?W@5?5 4??5?5?r9444??6>?=6?=??L=^>???DATA(/E-E0E0EBone.004 2P4._b?\F?Ѵ4r4ը@?̓(24̓(?ը@? $63?*63?W@??^X@5?5Sg1V4?N4?J:=@ŧ@n?$63?*63?W@?e>?=e?=??^>=???DATA(0E/E1E1EBone.005}3P=Y?«v?}56 ?W+ZW? ? ??^X@g@j@}ܚ?5?5F>>@1N??ʹ???^X@?q>J>?=J?=??==???DATA(1E0Eleg_pointer.0000CA5r?4?(]-!45Sm?[u[>Sm? g@j@}ܚ?]@`@ 5?5_A4!(5>(5>w%C/?/C/?>g@j@}ܚ??~?>?=?=??Nj>=???DATA(h3EFE-E8,E4E4EBone.006ɿ}!3&3q}?bq}?~4%4-?5?5?355?=5 lQ4i&4?q}?74W@~'5}5? \P45?5/5?lQ4i&4??I 6>?=6?=??L=^>???DATA(4Eh3EH6EH6EBone.007ⶴ̓IN_b?PF?.4R4+@?( ״(?@? q}?74W@d @5`X@65:4n?15:=:$]4n?q}?74W@?Te>?=e?=??^>=???DATA(H6E4EEEEEBone.008j5IY?īv?iv4녵nx ?W64W? ? d @5`X@׾5@C.6ܚ?'5nX۹?531N31N?-q4ڹ?d @5`X@?׸o?J>?=J?=??==???DATA(EEH6Eleg_pointer.001Y5w4r?4?v-/GG7ǰ4Km?Rk5>Km? ׾5@C.6ܚ?I@f6Ŵ)37>m(55ww?/>׾5@C.6ܚ???>?=?=??Rj>=???DATA(FEHLEh3E8,EGEGEBone.009Ie364.63?`q}?63?525? ?5??5? q94i&4?963?63W@555?5?>5?q94i&4??ɿ 6>?=6?=??L=^>???DATA(GEFEhIEhIEBone.010~r5S_b?F?3.z*%4@?(.5(?@? 963?63W@η?ÿQX@55)vѲd4?A48=@ץ@=n?963?63W@?C$e>?=e?=??^>=???DATA(hIEGEJEJEBone.011*6@+VY?v?Rŵ= ?W&5W? ? η?ÿQX@v@Ycܚ?55}qӵ>i־F1N?¹?η?ÿQX@?p?J>?=J?=??==???DATA(JEhIEleg_pointer.002+5r?4??5ϵ Qm?h5h>Qm? v@Ycܚ?r@B55 }Bj(5>p'5wC/?v@Ycܚ??2 @>?=?=??Sj>=???DATA(HLEREFE8,EMEMEBone.012@mIeⳑ4(63hq}?&63?5x#55??>5? i3i&4?6363W@55?95?>?5?i3i&4??? 6>?=6?=??L=^>???DATA(MEHLE(OE(OEBone.013ʳ5M_b?QF?2`ߴF5<5@?(Qd(?@? 6363W@ÿÿlX@55?ҝ4Y4F4^;=w@=@=n?6363W@?iF$>e>?=e?=??^>=???DATA((OEMEPEPEBone.014z/5,Y?Ыv?565, ? WG W? ? ÿÿlX@pfܚ?55?\5־־61N׹?ÿÿlX@?p⿰J>?=J?=??==???DATA(PE(OEleg_pointer.003>6r?4?4̵5d5Um?UôU>Um? pfܚ?vW!555?@6(5'5wC/2C/>pfܚ??2 >?=?=??^j>=???DATA(REWEHLE8,ExSExSEBone.015?W!&4q}nq}?73[55?55?5? -=3i&4?{q}3'5W@p?: 5qj45?5?d45?-=3i&4??I? 6>?=!6?=??L=^>???DATA(xSERETETEBone.016d{59_b?hF?k5c5ը@?̓(̓(?ը@? {q}3'5W@d  5fX@5?nd5:=:=J^3n?{q}3'5W@?lT=e>?=e?=??^>=???DATA(TExSEXVEXVEBone.017_4OY?ͫv?n5Vl54 ?WW,W? ? d  5fX@Ӿ5cA96ܚ?w4?qU5ٹ` Q551N51NԜٹ?d  5fX@?oJ>?=J?=??==???DATA(XVETEleg_pointer.004Z-p5r?4?604@5Km? ò>Km? Ӿ5cA96ܚ? I6D(4B$4?Y55ww)>Ӿ5cA96ܚ??>?=?=??Zj>=???DATA(WERE8,E8YE8YEBone.018I?jIeӾ0V#63pq}?#635?55?>5?> i344?63,63?W@5?5?~D?5??5?i344??1> 6>?=6?=??L=^>???DATA(8YEWEZEZEBone.019Xg47_b?XF?24A*W5, 4ۨ@?Ɠ(c?Ɠ(?ۨ@? 63,63?W@ÿ?gX@5?5?|KM4T4?:=@=@n?63,63?W@??=e?=??^>=???DATA(ZE8YE\E\EBone.020钴I;Y?v?9v5^sj ?W)JJW? ? ÿ?gX@ik@ܚ?5?5?02Ē־>21N?޹?ÿ?gX@?sqӾJ>?=J?=??==???DATA(\EZEleg_pointer.005245r?5?fhPO^5Lm?Xk95>Lm? ik@ܚ?_f@Ej55?5?>85(5F(5>w)C/)C/?>ik@ܚ??>?=?=??bj>=???DATA(]E^E8,E*Eleg_upper.000 ?g@$?z @*?qV?>]?\0G[6Tm4?]?10g@g@ބ3x@j@V?>]?9ĵ6Tm4?]?(g@g@ބ3? ?V>?=V?=??z>`x7>???DATA(^Eh`E]E*Eleg_upper.001 ?I@&H!I@&lV?>޳]?൪ 6[5?޳]?n0I@ 4:*3I@i5V?>޳]? P5[5?޳]?fI@ 4:*3? ?V>?=V?=??z>_x7>???DATA(h`EaE^E*Eleg_upper.002 ?h@=n.|@;n.uV?>]? ѵ66iw4?]?_0h@hB u@fV?>]? .5iw4?]?[h@hB ? ?V>?=V?=??z>`x7>???DATA(aEHcEh`E*Eleg_upper.003 ?g߳]?226ִ?߳]?%6(0ggxZjV?>߳]?fFt5ִ?߳]?ggx? ?V>?=V?=??z>\x7>???DATA(HcEdEaE*Eleg_upper.004 ?I&M6I|&V?>ݳ]?%Vs6 o35?ݳ]?4vٵ0I 4E*3Iᄡ5vV?>ݳ]?E5 o35?ݳ]?~SI 4E*3? ?V>?=vV?=??z>[x7>???DATA(dEHcE*Eleg_upper.005 ?h"?e 6S&?V?>]?$wڵ?6iw4?]?3E0hf@=Zh@V?>]?b^5iw4?]?̵hf@=? ?V>?=V?=??z>\x7>???AR(fE  LxEARArmature.0018gExxEyEDATA(8gEhEleg_target.000 ?h@h@h@h@/?>س]?hh!"3?س]?i!3 h@h@h@h@/?>س]?hh!"3?س]?i!3h@h@? ?/>?=/?=??=1=???DATA(hEjE8gEleg_limit.000 ?H?H?H?H?/?>س]?hh!"3?س]?i!30H?H?H?H?/?>س]?hh!"3?س]?i!3H?H?? ?/>?=/?=??=1=???DATA(jEkEhEleg_target.001 ?I@I@^3/?>س]?Hd3?س]?&"3 I@I@2^3/?>س]?Hd3?س]?&"3I@? ?/>?=/?=??=1=???DATA(kElEjEleg_limit.001 ? @ @^3/?>س]?Hd3?س]?&"30 @ @2^3/?>س]?Hd3?س]?&"3 @? ?/>?=/?=??=1=???DATA(lEhnEkEleg_target.002 ?h@hh@h/?>س]?hh!"3?س]?i!3 h@hh@h/?>س]?hh!"3?س]?i!3h@h? ?/>?=/?=??=1=???DATA(hnEoElEleg_limit.002 ?H?HϿH?HϿ/?>س]?hh!"3?س]?i!30H?HϿH?HϿ/?>س]?hh!"3?س]?i!3H?HϿ? ?/>?=/?=??=1=???DATA(oEHqEhnEleg_target.003 ?hhhh/?>س]?hh!"3?س]?i!3 hhhh/?>س]?hh!"3?س]?i!3hh? ?/>?=/?=??=1=???DATA(HqErEoEleg_limit.003 ?HϿGϿHϿGϿ/?>س]?hh!"3?س]?i!30HϿGϿHϿGϿ/?>س]?hh!"3?س]?i!3HϿGϿ? ?/>?=/?=??=1=???DATA(rE(tEHqEleg_target.004 ?II^3/?>س]?Hd3?س]?&"3 II2^3/?>س]?Hd3?س]?&"3I? ?/>?=/?=??=1=???DATA((tEuErEleg_limit.004 ? 4 i74/?>س]?Fd3?س]?&"30 4 L74/?>س]?Fd3?س]?&"3 4? ?/>?=/?=??=1=???DATA(uEwE(tEleg_target.005 ?hh@hh@/?>س]?hh!"3?س]?i!3 hh@hh@/?>س]?hh!"3?س]?i!3hh@? ?/>?=/?=??=1=???DATA(wExxEuEleg_limit.005 ?GϿH?GϿH?/?>س]?hh!"3?س]?i!30GϿH?GϿH?/?>س]?hh!"3?س]?i!3GϿH?? ?/>?=/?=??=1=???DATA(xxEwEyE( Lroot&>?5??0&>?5???&=?=&>=??"RK="R<???DATA(yE LxxEX{E8 LbodyNJ55&)?c5&??p33ŵ5Z4?33V4 Nﴳ 4)?\444??p33&0 &0 5Z4?33Y4Nﴳ 4)??5+=?=+>=??}5?5?> r9444?$63?*63?W@5?5 4??5?5?r9444??6>?=6?=??L=^>???DATA(|EX{E8~E8~EBone.004 2P4._b?\F?Ѵ4r4ը@?̓(24̓(?ը@? $63?*63?W@??^X@5?5Sg1V4?N4?J:=@ŧ@n?$63?*63?W@?e>?=e?=??^>=???DATA(8~E|EEEBone.005}3P=Y?«v?}56 ?W+ZW? ? ??^X@g@j@}ܚ?5?5F>>@1N??ʹ???^X@?q>J>?=J?=??==???DATA(E8~Eleg_pointer.0000CA5r?4?(]-!45Sm?[u[>Sm? g@j@}ܚ?]@`@ 5?5_A4!(5>(5>w%C/?/C/?>g@j@}ܚ??~?>?=?=??Nj>=???DATA(E؆EX{EyEEEBone.006ɿ}!3&3q}?bq}?~4%4-?5?5?355?=5 lQ4i&4?q}?74W@~'5}5? \P45?5/5?lQ4i&4??I 6>?=6?=??L=^>???DATA(EEEEBone.007ⶴ̓IN_b?PF?.4R4+@?( ״(?@? q}?74W@d @5`X@65:4n?15:=:$]4n?q}?74W@?Te>?=e?=??^>=???DATA(EEhEhEBone.008j5IY?īv?iv4녵nx ?W64W? ? d @5`X@׾5@C.6ܚ?'5nX۹?531N31N?-q4ڹ?d @5`X@?׸o?J>?=J?=??==???DATA(hEEleg_pointer.001Y5w4r?4?v-/GG7ǰ4Km?Rk5>Km? ׾5@C.6ܚ?I@f6Ŵ)37>m(55ww?/>׾5@C.6ܚ???>?=?=??Rj>=???DATA(؆EEEyEHEHEBone.009Ie364.63?`q}?63?525? ?5??5? q94i&4?963?63W@555?5?>5?q94i&4??ɿ 6>?=6?=??L=^>???DATA(HE؆EEEBone.010~r5S_b?F?3.z*%4@?(.5(?@? 963?63W@η?ÿQX@55)vѲd4?A48=@ץ@=n?963?63W@?C$e>?=e?=??^>=???DATA(EHE(E(EBone.011*6@+VY?v?Rŵ= ?W&5W? ? η?ÿQX@v@Ycܚ?55}qӵ>i־F1N?¹?η?ÿQX@?p?J>?=J?=??==???DATA((EEleg_pointer.002+5r?4??5ϵ Qm?h5h>Qm? v@Ycܚ?r@B55 }Bj(5>p'5wC/?v@Ycܚ??2 @>?=?=??Sj>=???DATA(EXE؆EyEEEBone.012@mIeⳑ4(63hq}?&63?5x#55??>5? i3i&4?6363W@55?95?>?5?i3i&4??? 6>?=6?=??L=^>???DATA(EExExEBone.013ʳ5M_b?QF?2`ߴF5<5@?(Qd(?@? 6363W@ÿÿlX@55?ҝ4Y4F4^;=w@=@=n?6363W@?iF$>e>?=e?=??^>=???DATA(xEEEEBone.014z/5,Y?Ыv?565, ? WG W? ? ÿÿlX@pfܚ?55?\5־־61N׹?ÿÿlX@?p⿰J>?=J?=??==???DATA(ExEleg_pointer.003>6r?4?4̵5d5Um?UôU>Um? pfܚ?vW!555?@6(5'5wC/2C/>pfܚ??2 >?=?=??^j>=???DATA(XE8 LEyEȓEȓEBone.015?W!&4q}nq}?73[55?55?5? -=3i&4?{q}3'5W@p?: 5qj45?5?d45?-=3i&4??I? 6>?=!6?=??L=^>???DATA(ȓEXE8E8EBone.016d{59_b?hF?k5c5ը@?̓(̓(?ը@? {q}3'5W@d  5fX@5?nd5:=:=J^3n?{q}3'5W@?lT=e>?=e?=??^>=???DATA(8EȓEEEBone.017_4OY?ͫv?n5Vl54 ?WW,W? ? d  5fX@Ӿ5cA96ܚ?w4?qU5ٹ` Q551N51NԜٹ?d  5fX@?oJ>?=J?=??==???DATA(E8Eleg_pointer.004Z-p5r?4?604@5Km? ò>Km? Ӿ5cA96ܚ? I6D(4B$4?Y55ww)>Ӿ5cA96ܚ??>?=?=??Zj>=???DATA(8 LXEyE L LBone.018I?jIeӾ0V#63pq}?#635?55?>5?> i344?63,63?W@5?5?~D?5??5?i344??1> 6>?=6?=??L=^>???DATA( L8 L L LBone.019Xg47_b?XF?24A*W5, 4ۨ@?Ɠ(c?Ɠ(?ۨ@? 63,63?W@ÿ?gX@5?5?|KM4T4?:=@=@n?63,63?W@??=e?=??^>=???DATA( L L L LBone.020钴I;Y?v?9v5^sj ?W)JJW? ? ÿ?gX@ik@ܚ?5?5?02Ē־>21N?޹?ÿ?gX@?sqӾJ>?=J?=??==???DATA( L Lleg_pointer.005245r?5?fhPO^5Lm?Xk95>Lm? ik@ܚ?_f@Ej55?5?>85(5F(5>w)C/)C/?>ik@ܚ??>?=?=??bj>=???DATA( Lh LyExxEleg_upper.000 ?g@$?z @*?qV?>]?\0G[6Tm4?]?10g@g@ބ3x@j@V?>]?9ĵ6Tm4?]?(g@g@ބ3? ?V>?=V?=??z>`x7>???DATA(h L L LxxEleg_upper.001 ?I@&H!I@&lV?>޳]?൪ 6[5?޳]?n0I@ 4:*3I@i5V?>޳]? P5[5?޳]?fI@ 4:*3? ?V>?=V?=??z>_x7>???DATA( LH Lh LxxEleg_upper.002 ?h@=n.|@;n.uV?>]? ѵ66iw4?]?_0h@hB u@fV?>]? .5iw4?]?[h@hB ? ?V>?=V?=??z>`x7>???DATA(H L L LxxEleg_upper.003 ?g߳]?226ִ?߳]?%6(0ggxZjV?>߳]?fFt5ִ?߳]?ggx? ?V>?=V?=??z>\x7>???DATA( L( LH LxxEleg_upper.004 ?I&M6I|&V?>ݳ]?%Vs6 o35?ݳ]?4vٵ0I 4E*3Iᄡ5vV?>ݳ]?E5 o35?ݳ]?~SI 4E*3? ?V>?=vV?=??z>[x7>???DATA(( L LxxEleg_upper.005 ?h"?e 6S&?V?>]?$wڵ?6iw4?]?3E0hf@=Zh@V?>]?b^5iw4?]?̵hf@=? ?V>?=V?=??z>\x7>???AC LEACBRIGEmptyAction LEOBDATAh L~h Lx L' LDATA8x L'?@DATA Lpose.bones["root"].locationDATAhh L~ L L L# LDATA8 L'?@DATA Lpose.bones["root"].locationDATAh L~ Lh L L#8 LDATA8 L'?@DATA8 Lpose.bones["root"].locationDATAh L~E L7EYp?#88EDATA87E'Yp??Yp?@Yp?DATA(88Epose.bones["root"].rotation_quaternionDATAhE~(E L8E#EDATA88E'?@DATA(Epose.bones["root"].rotation_quaternionDATAh(E~ȱEEذE#XEDATA8ذE'?@DATA(XEpose.bones["root"].rotation_quaternionDATAhȱE~hE(ExEZ#EDATA8xE'Z?Z@ZDATA(Epose.bones["root"].rotation_quaternionDATAhhE~EȱEE盿#EDATA8E'盿?盿@盿DATA(Epose.bones["leg_target.000"].locationDATAhE~EhEE!\[5#8EDATA8E'!\[5?!\[5@!\[5DATA(8Epose.bones["leg_target.000"].locationDATAhE~HEEXEDe?#طEDATA8XE'De??De?@De?DATA(طEpose.bones["leg_target.000"].locationDATAhHE~EEEt#xEDATA8E't?t@tDATA(xEpose.bones["leg_target.001"].locationDATAhE~EHEEÂX#EDATA8E'ÂX?ÂX@ÂXDATA(Epose.bones["leg_target.001"].locationDATAhE~(EE8EP>#EDATA88E'P>?P>@P>DATA(Epose.bones["leg_target.001"].locationDATAh(E~ȾEEؽEDe#XEDATA8ؽE'De?De@DeDATA(XEpose.bones["leg_target.002"].locationDATAhȾE~hE(ExEO#EDATA8xE'O?O@ODATA(Epose.bones["leg_target.002"].locationDATAhhE~EȾEE盿#EDATA8E'盿?盿@盿DATA(Epose.bones["leg_target.002"].locationDATAhE~EhEEAe?#8EDATA8E'Ae??Ae?@Ae?DATA(8Epose.bones["leg_target.005"].locationDATAhE~HEEXE 5#EDATA8XE' 5? 5@ 5DATA(Epose.bones["leg_target.005"].locationDATAhHE~EEE?#xEDATA8E'???@?DATA(xEpose.bones["leg_target.005"].locationDATAhE~EHEEt@#EDATA8E't@?t@@t@DATA(Epose.bones["leg_target.004"].locationDATAhE~(EE8Em5#EDATA88E'm5?m5@m5DATA(Epose.bones["leg_target.004"].locationDATAh(E~EEE\#XEDATA8E'\?\@\DATA(XEpose.bones["leg_target.004"].locationDATAhE~hE(ExE?#EDATA8xE'???@?DATA(Epose.bones["leg_target.003"].locationDATAhhE~EEE!\K#EDATA8E'!\K?!\K@!\KDATA(Epose.bones["leg_target.003"].locationDATAhE~hEEDe#8EDATA8E'De?De@DeDATA(8Epose.bones["leg_target.003"].locationACE8E LACBRIGEmptyAction.001EEOBDATAhE~(E8E'EDATA88E'?@DATAEpose.bones["root"].locationDATAh(E~EEE#XEDATA8E'?@DATAXEpose.bones["root"].locationDATAhE~hE(ExE#EDATA8xE'?@DATAEpose.bones["root"].locationDATAhhE~EEEYp?#EDATA8E'Yp??Yp?@Yp?DATA(Epose.bones["root"].rotation_quaternionDATAhE~EhEE#8EDATA8E'?@DATA(8Epose.bones["root"].rotation_quaternionDATAhE~HEEXE#EDATA8XE'?@DATA(Epose.bones["root"].rotation_quaternionDATAhHE~EEEZ#xEDATA8E'Z?Z@ZDATA(xEpose.bones["root"].rotation_quaternionDATAhE~EHEE盿#EDATA8E'盿?盿@盿DATA(Epose.bones["leg_target.000"].locationDATAhE~(EE8E \[5#EDATA88E' \[5? \[5@ \[5DATA(Epose.bones["leg_target.000"].locationDATAh(E~EEE@e?#XEDATA8E'@e??@e?@@e?DATA(XEpose.bones["leg_target.000"].locationDATAhE~hE(ExEt#EDATA8xE't?t@tDATA(Epose.bones["leg_target.001"].locationDATAhhE~EEEĂX#EDATA8E'ĂX?ĂX@ĂXDATA(Epose.bones["leg_target.001"].locationDATAhE~EhEE@>#8EDATA8E'@>?@>@@>DATA(8Epose.bones["leg_target.001"].locationDATAhE~HEEXEHe#EDATA8XE'He?He@HeDATA(Epose.bones["leg_target.002"].locationDATAhHE~EEEO#xEDATA8E'O?O@ODATA(xEpose.bones["leg_target.002"].locationDATAhE~EHEE替#EDATA8E'替?替@替DATA(Epose.bones["leg_target.002"].locationDATAhE~(EE8EAe?#EDATA88E'Ae??Ae?@Ae?DATA(Epose.bones["leg_target.005"].locationDATAh(E~EEE 5#XEDATA8E' 5? 5@ 5DATA(XEpose.bones["leg_target.005"].locationDATAhE~hE(ExE?#EDATA8xE'???@?DATA(Epose.bones["leg_target.005"].locationDATAhhE~EEEt@#EDATA8E't@?t@@t@DATA(Epose.bones["leg_target.004"].locationDATAhE~EhEEm5#8EDATA8E'm5?m5@m5DATA(8Epose.bones["leg_target.004"].locationDATAhE~HEEXE\#EDATA8XE'\?\@\DATA(Epose.bones["leg_target.004"].locationDATAhHE~EEE?#xEDATA8E'???@?DATA(xEpose.bones["leg_target.003"].locationDATAhE~EHEE!\K#EDATA8E'!\K?!\K@!\KDATA(Epose.bones["leg_target.003"].locationDATAhE~(EE8EDe#EDATA88E'De?De@DeDATA(Epose.bones["leg_target.003"].locationDATAh(E~EEE#XEDATA8E'?@DATA,XEpose.bones["leg_target.000"]["aw_status"]DATAhE~E(EE#EDATA8E'?@DATA,Epose.bones["leg_target.001"]["aw_status"]DATAhE~E8E#EDATA88E'?@DATA,Epose.bones["leg_target.002"]["aw_status"]AC8EEEACCameraActionEEOBDATAxELocRotScaleACE0D8EACEmpty.001ActionE.D80D80DOBDATAhE~XE80DhE#PX L?DATAhE'O?#PoA_gA\BzAB*YBzBz BzDATA X LlocationDATAhXE~XEE80DEeeAE?DATAE'29C.A?eeA29cAUA/AAB-AX)AB8;BYB-AB-A B-ADATA Elocation(DATAhXE~'DXE80DE(E?DATA8E'#* (?(#*,A(DATA Elocation4DATAh'D~((DXE80DE'D?DATA8E'#* ?#*,ADATA'Drotation_eulerDATAh((D~)D'D80D(DX)D?DATA8(D'#* ?#*,ADATAX)Drotation_eulerDATAh)D~+D((D80Dh*DE?X+D?DATAh*D'W[??E?wAI>qA>B)BBYBB BDATAX+Drotation_eulerDATAh+D~8-D)D80Dh,D?,D?DATA8h,D'#* ???#*,A?DATA,Dscale)DATAh8-D~.D+D80D-D?h.D?DATA8-D'#* ???#*,A?DATAh.Dscale.DATAh.D~8-D80Dh/D?/D?DATA8h/D'#* ???#*,A?DATA/Dscale.DATAx80DE.DLocRotScaleAC0DHCDEACEmpty.002Action1D@DBDBDOBDATAh1D~3DBD2DN @x3D?DATA2D' Q??N @+A]C@WA0Ǎ@Aȋ@($BӬ@7dGB@B ?MBl|DATA x3DlocationDATAh3D~5D1DBD4D^knAx5D?DATA4D'cFA?^knA&A AqAGAAAy"B}AIBABKA}BT BDATA x5Dlocationm+DATAh5D~7D3DBD6D@3H7D?DATAp6D'#* W3?@3#*,A(3A_3Aq3 Bz3DATA H7DlocationDATAh7D~x9D5DBDX8D9D?DATApX8D'#* ?#*,AAA BDATA9Drotation_eulerDATAhx9D~H;D7DBD(:D:D?DATAp(:D'#* ?#*,AAA BDATA:Drotation_eulerDATAhH;D~H=Dx9DBD;Dyd?tA鋼A I$BwGB[BsB[=DATAD?DATAp=D'#* ???#*,A?A?A? B?DATA>Dscale*DATAh?D~@DH=DBD?D?x@D?DATAp?D'#* ???#*,A?A?A? B?DATAx@Dscale;DATAh@D~?DBDxAD?8BD?DATApxAD'#* ???#*,A?A?A? B?DATA8BDscaleDATAxBD1D@DLocRotScaleACHCDUD0DACEmpty.003Action(DDSDTDTDOBDATAh(DD~(FDTDDD[ӿED?DATADD'A 94?[ӿA AjH1Ah8B.UB4fB9Bt湐B DATA EDlocationDATAh(FD~(HD(DDTDFD\V-AGD?DATAFD'@?\V-AA0nAiAA8BATB6AgBtrABRA,B0tADATA GDlocationDATAh(HD~ID(FDTDHD#3ID?DATApHD'Ss2?#3SAY3sA43&38Bp53)F~BE3DATA IDlocation6DATAhID~KD(HDTDJDhKD?DATApJD'S?SAsA8B)F~BDATAhKDrotation_eulerEDATAhKD~MDIDTDxLD8MD?DATApxLD'S?SAsA8B)F~BDATA8MDrotation_eulerEDATAhMD~ODKDTDHND18OD?DATAHND'@?1A?!+xAXO8BUB:վ&WfBq@UBmԐBq@U>DATA8ODrotation_eulerEDATAhOD~XQDMDTDHPD?QD?DATApHPD'S???SA?sA?8B?)F~B?DATAQDscale+DATAhXQD~SDODTDRD?RD?DATApRD'S???SA?sA?8B?)F~B?DATARDscaleDATAhSD~XQDTDSD?TD?DATApSD'S???SA?sA?8B?)F~B?DATATDscale,DATAxTD(DDSD LocRotScaleACUD[DHCDACEmpty.004ActionxVDYD([D([DOBDATAhxVD~XD([D(WD2@'WDDATA8(WD'C2@C2@C2@DATA WDlocationdDATAhXD~YDxVD([DXDF]e#8YDDATA8XD'CF]eCF]eCF]eDATA 8YDlocationDATAhYD~XD([DHZDښ?#ZDDATA8HZD'Cښ?Cښ?Cښ?DATA ZDlocationDATAx([DxVDYDLocationAC[DUDACEmptyAction\D(kDlDlDOBDATAh\D~^DlDx]DR8^D?DATApx]D'Z(D*?RZ(A{!BBRe BDATA 8^DlocationDATAh^D~h`D\DlDH_DH.A`D?DATApH_D'Y@?H.AYA߈A,#BȨABWAiBiBDATA `DlocationODATAhh`D~8bD^DlDaDaD?DATApaD' ?A[% B#B6B>DATA aDlocation"DATAh8bD~dDh`DlDbDcD?DATApbD'?A BBBDATAcDrotation_eulerDATAhdD~eD8bDlDdDxeD?DATApdD'?A BBBDATAxeDrotation_euler?DATAheD~gDdDlDfD0HgD?DATApfD'Rۿe?0RAkW B<B>BCs?DATAHgDrotation_eulerDATAhgD~hiDeDlDXhD?iD?DATApXhD'???A? B?B?B?DATAiDscaleDATAhhiD~(kDgDlDjD?jD?DATApjD'???A? B?B?B?DATAjDscaleDATAh(kD~hiDlDkD?lD?DATApkD'???A? B?B?B?DATAlDscale.DATAxlD\D(kDLocRotScaleOB mDt8tDOBArmaturesDDxE  @???????????????????????d8? #=?>=???????@???EDATA`sD?DATAsD vDleg_target.000E??????3?'??>س]?hh!"3?س]?i!3h@h@?????h@h@h@h@/?IIII@I@I@DATAvD HxDsDleg_limit.000E??????4?((?'?>س]?hh!"3?س]?i!3H?H??????H?H?H?H?/?IIII@I@I@DATAHxD zDvDleg_target.001hE??????'3?'?4?>س]?Hd3?س]?&"3I@?????I@I@2^3/?IIII@I@I@DATAzD |DHxDleg_limit.001E??????'3??43?>س]?Hd3?س]?&"3 @????? @ @2^3/?IIII@I@I@DATA|D xy LzDleg_target.002HE??????3?(??>س]?hh!"3?س]?i!3h@h?????h@hh@h/?IIII@I@I@DATAxy L { L|Dleg_limit.002 E???????'(??>س]?hh!"3?س]?i!3H?HϿ?????H?HϿH?HϿ/?IIII@I@I@DATA{ L } Lxy Lleg_target.003("E??????3?'??>س]?hh!"3?س]?i!3hh?????hhhh/?IIII@I@I@DATA} L 8 L{ Lleg_limit.003#E??????3?((?4'?>س]?hh!"3?س]?i!3HϿGϿ?????HϿGϿHϿGϿ/?IIII@I@I@DATA8 L x L} Lleg_target.004%E??????'3?'??>س]?Hd3?س]?&"3I?????II2^3/?IIII@I@I@DATAx L  L8 Lleg_limit.004x&E??????3?(?3?>س]?Fd3?س]?&"3 4????? 4 L74/?IIII@I@I@DATA L  Lx Lleg_target.005'E??????3?(??>س]?hh!"3?س]?i!3hh@?????hh@hh@/?IIII@I@I@DATA L 8 L Lleg_limit.005X)E???????'(?4?>س]?hh!"3?س]?i!3GϿH??????GϿH?GϿH?/?IIII@I@I@DATA8 L x L Lroot000*E??????????5???????&>IIII@I@I@DATAx L  L8 Lbody8,E8 L??????i(?i(? (??p33&0 &0 5Z4?33Y4Pﴳ 4)??????Pﴳ 4)?\444?IIII@I@I@DATA L  Lx LBone.003&-Ex L L??????34?`4 4?Qf~Y4?5?5>}H4 ? ?5?5?p9444??????p9444?*63?,63?W@IIII@I@I@=DATA L 8 L LBone.004/E L8 L??????34?3@1?44?5?5ؾZ4?M4?[:=ԧ@ɧ@n?*63?,63?W@?????*63?,63?W@??\X@IIII@I@I@=DATA8 L ؕ L LBone.0050E Lؕ L??????344?50?55?5?5>>51N??ѹ???]X@???????]X@o@m@ܚ?IIII@I@I@=DATAxx LmD1leg_target.000???DATAX8 Lx LIK?DATAؕ L  L8 L8 L8 Lleg_pointer.0001E8 L??????54?d5X?65H?5?5n4[(5>:(5>w&C/?*C/?>o@l@ܚ?????4?o@l@ܚ?j@d@5IIII@I@I@=DATA L X Lؕ LBone.006&h3Ex LX L??????ƴ 44?bmT3?lQ4^sȳ4?V4V5?wƱ5?5h5?lQ4i&4??????lQ4i&4?q}?4W@IIII@I@I@=DATAX L  L LBone.0074E L L??????'(4, 4? 4?5? a45n?ͳ3:=:t4n?q}?4W@?????q}?4W@d @z+4aX@IIII@I@I@=DATA L 8 LX LBone.008H6EX L8 L??????x7@4D5?@55?O4?@4hݹ?451N11N?2۹?d @z+4bX@?????d @z+4bX@־5@kC5ܚ?IIII@I@I@=DATAx؞ LmD1leg_target.001???DATAX L؞ LIK?DATA8 L x L L L Lleg_pointer.001EE L??????`?@(H!5?D1'5?4?kgP޲>վ5@jC5ܚ???3?(?+?վ5@jC5ܚ?I@5IIII@I@I@=DATAx L  L8 LBone.009&FEx L L??????0`4<5?34?$̳@?55dT5?5??5?n94i&4??????n94i&4?163?63W@IIII@I@I@=DATA L  Lx LBone.010GEx L L??????4p5?5? 5 ?55)"5S4?M49=@J@=n?263?63W@?????263?63W@?ÿXX@IIII@I@I@=DATA L  L LBone.011hIE L L??????55?`6?5X?55޴>־41N?۹??ÿXX@??????ÿXX@m@h|ܚ?IIII@I@I@=DATAx8 LmD1leg_target.002???DATAX L8 LIK?DATA L ج L L L Lleg_pointer.002JE L??????̵<55?,76?6p? 55@еj(5>3(5wC/?BC/>l@h|ܚ???&???2??l@h|ܚ?h@`IIII@I@I@=DATAج L  L LBone.012&HLEx L L??????54?4 ?m 5i&44?55? 5?> ?5?f3i&4??????f3i&4?63'63W@IIII@I@I@=DATA L X Lج LBone.013MEج LX L??????E55`?@243?@54?55??_R4P4-;=@=@=n? 63(63W@????? 63(63W@ÿÿhX@IIII@I@I@=DATAX L  L LBone.014(OE L L??????H55?`5?5`?55?7 4־־61Nչ?ÿÿiX@?????ÿÿiX@joܚ?IIII@I@I@=DATAx LmD1leg_target.003???DATAXX L LIK?DATA L 8 LX LX LX Lleg_pointer.003PEX L??????@5 5?$hh5?5@?55?6(5 (5wC/7C/>inܚ?????'&?inܚ?jd@5IIII@I@I@=DATA8 L x L LBone.015&REx Lx L??????44?) 4?cKo4/4??5535?5?jW55?-=3i&4??????-=3i&4?q}u4W@IIII@I@I@=DATAx L  L8 LBone.016xSE8 L L??????H5 4C? (q4?4h?E4?=nй4:=:=35n?q}u4W@?????q}u4W@d oB5dX@IIII@I@I@=DATA L X Lx LBone.017TEx LX L??????l5h?;F`4 @5?ފM?+?gs3۹ 31N31N!ڹ?d oB5dX@?????d oB5dX@Ծ54ܚ?IIII@I@I@=DATAx LmD1leg_target.004???DATAX L LIK?DATAX L  L L L Lleg_pointer.004XVE L??????x5ȴ~t?FOs4֬m5?@Dc?k ?fG5H4ww P6>Ծ54ܚ???2M?$2,??Ծ54ܚ?In z54IIII@I@I@=DATA L  LX LBone.018&WEx L L??????340?4?ڄ4?˼?5?5?h^ ?5??5?h344??????h344?!63163?W@IIII@I@I@=DATA L  L LBone.0198YE L L??????3<4?x4?34?5?5?`xR4Q4?:=z@=E@n?!63163?W@?????!63163?W@ÿ?cX@IIII@I@I@=DATA L  L LBone.020ZE L L??????3 ? 4?5?5?5?В־>/1N?ݹ?ÿ?cX@?????ÿ?cX@ol@ܚ?IIII@I@I@=DATAxX LmD1leg_target.005???DATAX LX LIK?DATA L  L L L Lleg_pointer.005\E L??????3 ?4ش?5?5?5?i4((5[(5>w0C/"C/?>ok@ܚ???3?2&2??ok@ܚ?hh@5IIII@I@I@=DATA L 8 L Lleg_upper.000]E8 L??????3??@+?>]?9ĵ6Tm4?]?(g@g@3?????g@g@3x@j@V?IIII@I@I@DATA8 L x L Lleg_upper.001^E8 L???????)? 4?>޳]? P5[5?޳]?fI@ 4@*3?????I@ 4@*3I@i5V?IIII@I@I@DATAx L  L8 Lleg_upper.002h`E8 L???????)??>]? .5iw4?]?[h@h@ ?????h@h@ u@fV?IIII@I@I@DATA L Ex Lleg_upper.003aE8 L?????? 4*3?@?44?>߳]?fFt5ִ?߳]?gg?????ggZjV?IIII@I@I@DATAE XE Lleg_upper.004HcE8 L??????3*?`**?+?>ݳ]?D5 o35?ݳ]?~SI 4@*3?????I 4@*3Iᄡ5vV?IIII@I@I@DATAXE Eleg_upper.005dE8 L??????@?@*)?@?>]?b^5iw4?]?̵hf@@?????hf@@Zh@V?IIII@I@I@DATADsDXE85L  bodyimit.005DATAEw??=L> ף< OB 8tDtDEmDOBBRIGEmpty.004tE8BE(fE  @???????????????????????d8? #=?>=???????@???8CEDATA`tE?DATAyD {Dleg_target.0008gE??????3?'??>س]?hh!"3?س]?i!3h@h@?????h@h@h@h@/?IIII@I@I@DATA{D (~DyDleg_limit.000hE??????4?((?'?>س]?hh!"3?س]?i!3H?H??????H?H?H?H?/?IIII@I@I@DATA(~D hD{Dleg_target.001jE??????'3?'?4?>س]?Hd3?س]?&"3I@?????I@I@2^3/?IIII@I@I@DATAhD D(~Dleg_limit.001kE??????'3??43?>س]?Hd3?س]?&"3 @????? @ @2^3/?IIII@I@I@DATAD DhDleg_target.002lE??????3?(??>س]?hh!"3?س]?i!3h@h?????h@hh@h/?IIII@I@I@DATAD (DDleg_limit.002hnE???????'(??>س]?hh!"3?س]?i!3H?HϿ?????H?HϿH?HϿ/?IIII@I@I@DATA(D hDDleg_target.003oE??????3?'??>س]?hh!"3?س]?i!3hh?????hhhh/?IIII@I@I@DATAhD D(Dleg_limit.003HqE??????3?((?4'?>س]?hh!"3?س]?i!3HϿGϿ?????HϿGϿHϿGϿ/?IIII@I@I@DATAD DhDleg_target.004rE??????'3?'??>س]?Hd3?س]?&"3I?????II2^3/?IIII@I@I@DATAD (DDleg_limit.004(tE??????3?(?3?>س]?Fd3?س]?&"3 4????? 4 L74/?IIII@I@I@DATA(D hDDleg_target.005uE??????3?(??>س]?hh!"3?س]?i!3hh@?????hh@hh@/?IIII@I@I@DATAhD D(Dleg_limit.005wE???????'(?4?>س]?hh!"3?س]?i!3GϿH??????GϿH?GϿH?/?IIII@I@I@DATAD DhDroot000xxE??????????5???????&>IIII@I@I@DATAD (DDbodyyED??????i(?i(? (??p33&0 &0 5Z4?33Y4Pﴳ 4)??????Pﴳ 4)?\444?IIII@I@I@DATA(D hDDBone.003&X{EDhD??????34?`4 4?Qf~Y4?5?5>}H4 ? ?5?5?p9444??????p9444?*63?,63?W@IIII@I@I@=DATAhD D(DBone.004|E(DD??????34?3@1?44?5?5ؾZ4?M4?[:=ԧ@ɧ@n?*63?,63?W@?????*63?,63?W@??\X@IIII@I@I@=DATAD HDhDBone.0058~EhDHD??????344?50?55?5?5>>51N??ѹ???]X@???????]X@o@m@ܚ?IIII@I@I@=DATAxD8tD1leg_target.000???DATAXDDIK?DATAHD DDDDleg_pointer.000ED??????54?d5X?65H?5?5n4[(5>:(5>w&C/?*C/?>o@l@ܚ?????4?o@l@ܚ?j@d@5IIII@I@I@=DATAD ȥDHDBone.006&EDȥD??????ƴ 44?bmT3?lQ4^sȳ4?V4V5?wƱ5?5h5?lQ4i&4??????lQ4i&4?q}?4W@IIII@I@I@=DATAȥD DDBone.007EDD??????'(4, 4? 4?5? a45n?ͳ3:=:t4n?q}?4W@?????q}?4W@d @z+4aX@IIII@I@I@=DATAD DȥDBone.008EȥDD??????x7@4D5?@55?O4?@4hݹ?451N11N?2۹?d @z+4bX@?????d @z+4bX@־5@kC5ܚ?IIII@I@I@=DATAxHD8tD1leg_target.001???DATAXDHDIK?DATAD DDDDleg_pointer.001hED??????`?@(H!5?D1'5?4?kgP޲>վ5@jC5ܚ???3?(?+?վ5@jC5ܚ?I@5IIII@I@I@=DATAD (DDBone.009&؆ED(D??????0`4<5?34?$̳@?55dT5?5??5?n94i&4??????n94i&4?163?63W@IIII@I@I@=DATA(D EDBone.010HEDE??????4p5?5? 5 ?55)"5S4?M49=@J@=n?263?63W@?????263?63W@?ÿXX@IIII@I@I@=DATAE XE(DBone.011E(DXE??????55?`6?5X?55޴>־41N?۹??ÿXX@??????ÿXX@m@h|ܚ?IIII@I@I@=DATAxE8tD1leg_target.002???DATAXEEIK?DATAXE EEEEleg_pointer.002(EE??????̵<55?,76?6p? 55@еj(5>3(5wC/?BC/>l@h|ܚ???&???2??l@h|ܚ?h@`IIII@I@I@=DATAE EXEBone.012&EDE??????54?4 ?m 5i&44?55? 5?> ?5?f3i&4??????f3i&4?63'63W@IIII@I@I@=DATAE EEBone.013EEE??????E55`?@243?@54?55??_R4P4-;=@=@=n? 63(63W@????? 63(63W@ÿÿhX@IIII@I@I@=DATAE EEBone.014xEEE??????H55?`5?5`?55?7 4־־61Nչ?ÿÿiX@?????ÿÿiX@joܚ?IIII@I@I@=DATAxXE8tD1leg_target.003???DATAXEXEIK?DATAE EEEEleg_pointer.003EE??????@5 5?$hh5?5@?55?6(5 (5wC/7C/>inܚ?????'&?inܚ?jd@5IIII@I@I@=DATAE 8"EEBone.015&XED8"E??????44?) 4?cKo4/4??5535?5?jW55?-=3i&4??????-=3i&4?q}u4W@IIII@I@I@=DATA8"E x$EEBone.016ȓEEx$E??????H5 4C? (q4?4h?E4?=nй4:=:=35n?q}u4W@?????q}u4W@d oB5dX@IIII@I@I@=DATAx$E (E8"EBone.0178E8"E(E??????l5h?;F`4 @5?ފM?+?gs3۹ 31N31N!ڹ?d oB5dX@?????d oB5dX@Ծ54ܚ?IIII@I@I@=DATAx&E8tD1leg_target.004???DATAXx'E&EIK?DATA(E X*Ex$Ex'Ex'Eleg_pointer.004Ex$E??????x5ȴ~t?FOs4֬m5?@Dc?k ?fG5H4ww P6>Ծ54ܚ???2M?$2,??Ծ54ܚ?In z54IIII@I@I@=DATAX*E ,E(EBone.018&8 LD,E??????340?4?ڄ4?˼?5?5?h^ ?5??5?h344??????h344?!63163?W@IIII@I@I@=DATA,E .EX*EBone.019 LX*E.E??????3<4?x4?34?5?5?`xR4Q4?:=z@=E@n?!63163?W@?????!63163?W@ÿ?cX@IIII@I@I@=DATA.E x2E,EBone.020 L,Ex2E??????3 ? 4?5?5?5?В־>/1N?ݹ?ÿ?cX@?????ÿ?cX@ol@ܚ?IIII@I@I@=DATAx1E8tD1leg_target.005???DATAX1E1EIK?DATAx2E 4E.E1E1Eleg_pointer.005 L.E??????3 ?4ش?5?5?5?i4((5[(5>w0C/"C/?>ok@ܚ???3?2&2??ok@ܚ?hh@5IIII@I@I@=DATA4E 6Ex2Eleg_upper.000 LD??????3??@+?>]?9ĵ6Tm4?]?(g@g@3?????g@g@3x@j@V?IIII@I@I@DATA6E 89E4Eleg_upper.001h LD???????)? 4?>޳]? P5[5?޳]?fI@ 4@*3?????I@ 4@*3I@i5V?IIII@I@I@DATA89E x;E6Eleg_upper.002 LD???????)??>]? .5iw4?]?[h@h@ ?????h@h@ u@fV?IIII@I@I@DATAx;E =E89Eleg_upper.003H LD?????? 4*3?@?44?>߳]?fFt5ִ?߳]?gg?????ggZjV?IIII@I@I@DATA=E ?Ex;Eleg_upper.004 LD??????3*?`**?+?>ݳ]?D5 o35?ݳ]?~SI 4@*3?????I 4@*3Iᄡ5vV?IIII@I@I@DATA?E =Eleg_upper.005( LD??????@?@*)?@?>]?b^5iw4?]?̵hf@@?????hf@@Zh@V?IIII@I@I@DATA8BEyD?Ex҉YbodyDATA8CEw??=L> ף< OB DEthJE8tDOBCameraamera.0018uE UY  Ak@A???م?<=?????/?X?@嵼nk>j?G?}A> Ak@A??????33?3?5)?/?nG?X?k>yp嵼j?A>y|; \?OBd8???>6 ?u=?????IEDATA`8uE8E?DATAIEw??=L> ף<OB hJEtaEDEOBCube002mDw^Y8,)L  OE^E8`E8`E?????????????????????????d8? #=?>=???????@???X_EHRY[EDATA0OErXPEleg_target.000DATA0XPErPEOEleg_target.001DATA0PErXQEXPEleg_target.002DATA0XQErQEPEleg_target.003DATA0QErXREXQEleg_target.004DATA0XRErREQEleg_target.005DATA0RErXSEXREbodyDATA0XSErSEREBone.003DATA0SErXTEXSEBone.004DATA0XTErTESEBone.005DATA0TErXUEXTEleg_pointer.000DATA0XUErUETEBone.006DATA0UErXVEXUEBone.007DATA0XVErVEUEBone.008DATA0VErXWEXVEleg_pointer.001DATA0XWErWEVEBone.009DATA0WErXXEXWEBone.010DATA0XXErXEWEBone.011DATA0XErXYEXXEleg_pointer.002DATA0XYErYEXEBone.012DATA0YErXZEXYEBone.013DATA0XZErZEYEBone.014DATA0ZErX[EXZEleg_pointer.003DATA0X[Er[EZEBone.015DATA0[ErX\EX[EBone.016DATA0X\Er\E[EBone.017DATA0\ErX]EX\Eleg_pointer.004DATA0X]Er]E\EBone.018DATA0]ErX^EX]EBone.019DATA0X^Er^E]EBone.020DATA0^ErX^Eleg_pointer.005DATAX_Ew??=L> ף< DATA8`E[ArmatureUYmDOB aEtx EhJEOBCube.0018tDHEE  xfEEEE<ź͠???????????<ź͠????????????0?:͠?d8? #=?>=???????@???(EiEXLTYDATA0xfErfEleg_target.000DATA0fErxgExfEleg_target.001DATA0xgErgEfEleg_target.002DATA0gErxhExgEleg_target.003DATA0xhErhEgEleg_target.004DATA0hErxiExhEleg_target.005DATA0xiEriEhEbodyDATA0iErxjExiEBone.003DATA0xjErjEiEBone.004DATA0jErxkExjEBone.005DATA0xkErkEjEleg_pointer.000DATA0kErxlExkEBone.006DATA0xlErlEkEBone.007DATA0lErxmExlEBone.008DATA0xmErmElEleg_pointer.001DATA0mErxnExmEBone.009DATA0xnErnEmEBone.010DATA0nErExnEBone.011DATA0Er(EnEleg_pointer.002DATA0(ErEEBone.012DATA0Er(E(EBone.013DATA0(ErEEBone.014DATA0Er(E(Eleg_pointer.003DATA0(ErEEBone.015DATA0Er(E(EBone.016DATA0(ErEEBone.017DATA0Er(E(Eleg_pointer.004DATA0(ErEEBone.018DATA0Er(E(EBone.019DATA0(ErEEBone.020DATA0Er(Eleg_pointer.005DATA(Ew??=L> ף< DATAE[ArmatureUY8tDOB x Et EaEOBCube.003E0F  EEHEHE?[ӿ\V-A#3????????????????????????d8? #=?>=???????@???hEENDDATA0ErhEleg_target.000DATA0hErEEleg_target.001DATA0ErhEhEleg_target.002DATA0hErEEleg_target.003DATA0ErhEhEleg_target.004DATA0hErEEleg_target.005DATA0ErhEhEbodyDATA0hErEEBone.003DATA0ErhEhEBone.004DATA0hErEEBone.005DATA0ErhEhEleg_pointer.000DATA0hErEEBone.006DATA0ErhEhEBone.007DATA0hErEEBone.008DATA0ErhEhEleg_pointer.001DATA0hErEEBone.009DATA0ErhEhEBone.010DATA0hErEEBone.011DATA0ErhEhEleg_pointer.002DATA0hErEEBone.012DATA0ErhEhEBone.013DATA0hErEEBone.014DATA0ErhEhEleg_pointer.003DATA0hErEEBone.015DATA0ErhEhEBone.016DATA0hErEEBone.017DATA0ErhEhEleg_pointer.004DATA0hErEEBone.018DATA0ErhEhEBone.019DATA0hErEEBone.020DATA0ErhEleg_pointer.005DATAhEw??=L> ף< DATAHE[ArmatureUYOB  Et-Ex EOBEmpty%E,E  RH.A???0????NE?##?NE??RH.A??????Rx2Rx}??[M=6Jg6J?NE?#?&#NE?&?A8<>3?d8? #=?>=?=?????@???,EDATA`%E8&EX+EDATA`8&E8'Etb_type&EDATA&EboidDATA`8'E'E8&Etb_em_herd|/?DATA`'E(E8'Etb_em_panic'Ɗ?DATA`(EH)E'Etb_em_sleepXle?DATA`H)E)E(Etb_em_centre%؊4{?DATA`)E*EH)Etb_em_cluster3} 'D?DATA`*EX+E)Etb_em_repel ur?DATA`X+E*Etb_speedmp?DATA`,E[D?DATA,Ew??=L> ף<OB -Et;E EOBEmpty.0013E9E  #PeeA(???E?????~7?+2?+2~7??#PeeA(????????'?~7?+2+2?}7??~g(3?d8? #=?>=?=?????@???8:EDATA`3E3E8EDATA`3E4Etb_typeh4EDATAh4EboidDATA`4Eh5E3Etb_em_herd ף<OB ;EtHE-EOBEmpty.002@EGE  N @^knA@3???yd?????W? ? W??N @^knA@3??????I3%ی2??.U296'?W? @ ?W?&?,A5@?d8? #=?>=?=?????@???DATA`@E8AEXFEDATA`8AE8BEtb_typeAEDATAAEboidDATA`8BEBE8AEtb_em_herd"9<ǵ?DATA`BECE8BEtb_em_panic'ݧ/?DATA`CEHDEBEtb_em_sleep50z߭?DATA`HDEDECEtb_em_centrewP9?DATA`DEEEHDEtb_em_clusterJ%h?DATA`EEXFEDEtb_em_repelw<T?DATA`XFEEEtb_speed+2^$a?DATA`GE0D@?OB HEt;EOBEmpty.003GE(E  [ӿ\V-A#3???1????0E?0A#0A#?0E??[ӿ\V-A#3??????Tޛlk2??UU5B(?0E?/A#?&0A#0E?&?AV#?d8? #=?>=?=?????@???DATA`GEhHExEDATA`hHEhIEtb_typeIEDATAIEboidDATA`hIEJEhHEtb_em_herdl†ĵ?DATA`JEEhIEtb_em_panic@?DATA`EhEJEtb_em_sleep_?DATA`hEEEtb_em_centreC?DATA`EEhEtb_em_cluster,3{?DATA`ExEEtb_em_repelL?DATA`xEEtb_speed~XK?DATA`(EHCD@?MEE.0FMECube.0000FhE0FEE$h0F X0F???CDATAhEThEEDATA,hE4P>Tt?ؽ^xPTt?ؽxb> [==#<-+b߾ [==-+=>x?n>&mg@<x?n>Omg@>0WF*?s@1ξ1WE*?s@1DanZ/ݠ`xv?퓾3Y0h>E!41RՁ?p>*KgP%?Ԝ>bbK5?Q,W*>K5?(,W+?Y3@v5?Tu愂>?2s>zeM?2s>M> z?\c2雲 z?2雲절?E>?5m?2JI절E>?5m?mJIz?F?t ?SzF?t ?*E?-?rv?ȩI{;E-?rv?8VI{;ИK?jΏ?q ?txYИKjΏ?q ?&xYY??n?k>Y󸿪?n?Tk>w?v?w!?>wv?w!?[Y>?{?0c?N6Ҳӿ{?0c?ɉҲk?>? x?eۗEkֿ>? x?嚵ۗEڰ@K?3c[RڰK?3c뽥R3@?5;L2?0}B?/quL2?/}B?/qu bk?Rs?b?%| bkRs?b?<%|??[?(i1nǿ?[?=i1n@@FFq]=G(?Y>]sL?d?P? ' =sLd?P?' =4 ?uoq?Q1?O/4 uoq?Q1?WO/r%?Pi?_>9er%Pi?_>"e^*?oA? p?e^*oA? p?^Geӎ?n"?3jӎn"?̋jz?<}2Ir?~Pz<}2Ir?~P}?!>܏f?{iG}!>܏f?iGh?k>8?u7#ahk>8?#a @P)>h?c-a^E P)>h?҅a^E, @(>"?fZiL, (>"?ZiL @%' ?1犘ٸ %' ?ٸF @!$r?m-*LF !$r?*L`i9@\cptCUR>-W?6o?4NV-W6o?˱NV?glņl?˯DKglņl?5PDK!?izg>F!izg>*Fm?Aʿ4&?;mAʿ4&?W&?̿*q?j,K&̿*q?!,K?R5Y9ϿR5ƬЗ룾Ԁ%т>/K^?ĤY>"-ܳM?Sb>PuJ?6?-1^U2SRE?0A?s\Xzfl>?3gϣ?djz>fl>?GB3gϣ>?j&т/K^? ĤYsR^=MԌ?] g>sR^=MԌ?\K] gݾ#>2M?&4}`>#>2M?A&4}`2?m?EXLQ`2>?m?#XLQ`bOuJ?6?1^Ut[Ѱըc ?scG17ѕ?xc>G17ѕ?x~{Ž>3M?w1r]<1Cm>2.?JCl}{>Ž>3M?1rtX=?|t>X=?H|lSU=0g?vY-J?ߔ>IMžu?>\VPY-?1m ƀm>h?"U9hmmƾh?"U9mM>u?>cVP2-a?>kcE6> ?1(x>J_(2-R?fX/iv?+%^>v?+L^6 ?1(x>c_(DATA E3 LhDxoE(EEEHEEEhEE8EEEEEHEE(EE E E Eh E EH E E Ex E E8 E E EXEEExEE8EEEXEEExEE8EEE8EEEXEEExEE8EEEHEEEXEEEhEEEhEE(EEEHEEEhEE(EEEH E E!Eh!E!E("E"E"EH#E#E$Eh$E$E(%E%E%EH&E&E'Eh'E'E(Eh(E(E)Eh)E)E*EX*E*E*EH+E+E,Ex,E,E8-E-E-EH.E.E.E8/E/E/EX0E0E1Ex1E1E82E2E2EX3E3E4Ex4E4E85E5E5EX6E6E7Ex7E7E88E8E8E89E9E9EX:E:E;Eh;E;E(Eh>E>E(?E?E?EX@E@E8AEAEAEBECECEDEDEEEEEFEFEFExGEGEhHEHEIEJEJEKEKELELELEhMEMEHNENE(OEOEPExPEPEXQEDATA L2I)?ۆ,=n_>b.o<V-?.=DATAxoE2QEQ?+ >DATA(E2>N?DATAE24?*q=$>DATAE2%>I5?5=DATAHE2V?=F,_=DATAE2\=R?9=DATAE2?c>DATA hE2\>,9Z<i?>bXDATA 8E2H><|>. *n$>KYB>L!>DATA E2@>$p >E>"!>DATA8 E2;>(N= ~_<4_<j>{M=DATA E2>㜇=>S=DATA E2N>Cw=e>O=DATA h E2%>S=?K{=DATA E2\>OS=kp>`4=DATA H E2V>=.?U=DATA E2׎=e?DATA E2Œ=de?DATAx E2:=X? ~ /?DATAE2o>/?DATAxE2Ŋ= Xm?DATAE2Ŋ=Ym?DATA8E2|= P`? HF;DATAE2=@`?M;DATAE29> C?DATAXE28>B?DATAE2 >w> B?DATAE2w>MB?DATAxE2 #i? aa=DATAE27i?`=DATA8E2 M~?DATAE2M~?DATAE2 7j? q =DATA8E27j?/=DATAE2!= at?DATAE2y=t?DATAXE2Tp? B~=DATAE2o?K=DATAE2t= )b?DATAxE2=ab?DATAE2O@G? R&c>DATA8E2F?ǟd>DATAE2X?DATAE2?Ɋ>DATAHE2[?e=W;DATAE28Z?J=DATAE2\v?DATAXE2Xv?DATAE2mk> -f?DATAE2qk>-f?DATAhE2 }?DATAE2*}?DATAE2go? =DATAhE2wo?{J=DATAE2iY?F=DATA(E2~~Y?M=DATAE27V?5 >DATAE2پV?ٚ >DATAHE29?>qj>K/;DATAE2`9:V%:?j>DATAE2>SD?.>6ی=DATAhE2@=(AE? y>DATAE2&>Y?DATA(E2~>Y?DATAE2 n֜= &\?`i;DATAE2 b;bn=\?DATAH E2 :O< ٠p?DATA E2V<p?DATA!E2of= V> GI?DATAh!E2>I?lf=DATA!E2YQ= w-? `r>DATA("E2 -?Xr>R=DATA"E2 > l?DATA"E2>i?DATAH#E2 <= Tg?DATA#E2<=Sg?DATA$E2 = g?DATAh$E2=g?DATA$E2 :> ?DATA(%E21>?DATA%E2 zj?O=DATA%E22zj?S=DATAH&E2 #> W?DATA&E2# #>AW?DATA'E2 Ųc?r=DATAh'E2uc?Z=DATA'E2 {?DATA(E2c{?DATAh(E2 X9y?DATA(E2~?DATA)E2z?DATAh)E2`G?DATA)E2?DATA*E23(?DATAX*E2s~?DATA*E2&U?DATA*E2?DATAH+E2M?DATA +E2> O<? FM>h*=DATA ,E2>=: ?-M>r>DATAx,E2 2ށ= k?DATA,E2=k?DATA8-E2 ,> m?DATA-E2->m?DATA-E2 {?DATA.E2\?DATA8/E2T?c>DATA/E2JT?>DATA/E2 r <ѧ=[^?DATAX0E2O=U^?)MW?DATA4E2e>W?DATAx4E2O?B>DATA4E2O?B>DATA85E2pr=bp?DATA5E2sr=)bp?DATA5E2kT>?DATAX6E2sT>?DATA6E2>?DATA7E24>?DATAx7E2+J=o?DATA7E2oJ=io?DATA88E2 ~?DATA8E2}?DATA8E2``;xx?DATA89E2<x?DATA9E2}=@(p?DATA9E2 b=o?DATAX:E25?5>DATA:E25?~ǔ>DATA;E2(?DATAh;E2q>C?DATA;E2 ,=}K?n=DATA(DATA=E2k?>DATA>E2>@?DATAh>E2>B?DATA>E2>ާZ?DATA(?E2{>rZ?DATA ?E2>4<<՘>DATA?E2M>>DATA X@E2 )=^(?$=O?>DATA @E2 8C;>i<?J;DATA8AE2%? =Em>DATAAE2j>҈>DATA@AE2|\V< Ȇ;*=P>6= 0> =詗=DATA8BE2 ;Zw=OT?!-=,1>PGQ; S Oψ=t>̦S=ch=q_<dGlM3?@,=4=DATA8DE2 `= <aj=m!=F>1=ڶ(>DATA8EE2> > ߸=2=5=<X=DATA8EE2Ц= <.<J3=db>è}=P>DATA8FE2> yW> 2=ٿz=D<<=DATA FE23>9=Lj,?l{UDATA xGE2F>Pc;*?\=DATA0GE2cgH= V=3>W%>p=t =DATA@hHE2Cj= vt=>iq>:͜>)'==DATA@HE2= > =kl>+;P)>Ϣ=j]=DATA8IE21> u=L==e>N<n>DATA0JE2> =rN=tR=2=>DATA8JE2v> n> ?=@c====>DATA8KE2W= XҊ==i>u"> J=}>DATA8KE2B> ==8>@==z=DATA0LE2S> * >n+C>GG>71>9=DATA LE2Y>=_=w!>hL_=DATA LE2>!l=>Tp=DATA hME2>>L=>v=DATA ME2>X=[>=DATA HNE2c>=>n1^=DATA NE2+>$m=P>Bg=DATA (OE2f>o=(>l=DATA OE2>c=u6>,=DATA PE2Z><=m>s=DATA xPE2ֱ>$=>zm=DATA PE2>|a=s>e=DATA XQE2y?>=/s>f=DATAhh0FT0FDATA0F1""""" " " " " " " " """ " """""""""##"" "!" ! ""#""$"#%" $"!%"$&"%'"&"'"(")"&( ') &*"'+"*,"+-"(,")-""."#/"$0"%1"*0"+1".0 /1 .4"/5"24 35 02"13"26"37"*6"+7",8"-9"68"79"6:"7;"2:"3;"4:"5;"8:"9;"<"="<"=">"?">"?""@"#A"(@")A",B"-C".B"/C"4D"5E"8D"9E">@"?A"@B"AC"BD"CE":D";E" F" G"F"G"H"I"H"I"J"K"J"K"L"M" L"!M"<N"=O">N"?O"FH"GI"FL"GM"JL"KM"JN"KO"HN"IO"P"Q"PR"QS"R"S"T"U" V" W"PV"QW"TV"UW"TX"UY"XZ Y[ VZ"W["Z\"[]"P\"Q]"R^"S_"\^"]_"\b"]c"`b"ac"^`"_a"Xf"Yg"Zd"[e"bd"ce"df eg fh"gi"hj"ik"dj"ek"jl"km"bl"cm"`n"ao"ln"mo"lp"mq"jp"kq"hp"iq"np"oq"r"s"r"s"Rt"Su"Tt"Uu"Xv"Yw"^v"_w"`x"ay"fx"gy"hz"i{"nz"o{"rt"su"tv"uw"vx"wy"xz"y{"pz"q{"~""|~"}"|"}"""|"}"""""""""""|"}"""~"" """""""""""" """"""""""""""""""""""""""~"""""""""""""""""""""""""" "" """" """ " " " " """" " "" """"""""""s"r"""""""="<""" """"""""""""""""""""""""""""##"#####################DATAhX0FT0FDATA00F0       "$#!% $&%!'&(')(&*,+')-&$0*1%'+$".0/#%10.425/13*02631+7,*687+-986:;7962:;3724:;53>@"A?#>(@)?A"@B.CA#/@(,B-)AC.BD4EC/5B,8D9-CE4D:;E5D8:;9E FHIG FHGILF GM L F!MGLJMKJ L!KM<NJKO=N>J?OKHN<OI=H>N?IOPRQS VPW Q TVU WVTXZYUW[PVZ\[WQ]RP\^]QS_^\b`c]_a\Zdbe[]cZXfdgY[edfhjigekbdjlkecm`blnmcaonlpqmoljpqkmjhpqikrtTusUrRtSsuTtvXwuUYtR^v_SuwXvxfywYgv^`xa_wyfxzh{ygix`nzoay{hzpq{iznpqo{~|}|}|}|~}~~     srsr=<=<  ME0F.(oYEMECube.002oY1FoY1Fh0F$oY oY???CDATAhh0FT1F1FDATA,1F4P>Tt?ؽ^xPTt?ؽxb> [==#<-+b߾ [==-+=>x?n>&mg@<x?n>Omg@>0WF*?s@1ξ1WE*?s@1DanZ/ݠ`xv?퓾3Y0h>E!41RՁ?p>*KgP%?Ԝ>bbK5?Q,W*>K5?(,W+?Y3@v5?Tu愂>?2s>zeM?2s>M> z?\c2雲 z?2雲절?E>?5m?2JI절E>?5m?mJIz?F?t ?SzF?t ?*E?-?rv?ȩI{;E-?rv?8VI{;ИK?jΏ?q ?txYИKjΏ?q ?&xYY??n?k>Y󸿪?n?Tk>w?v?w!?>wv?w!?[Y>?{?0c?N6Ҳӿ{?0c?ɉҲk?>? x?eۗEkֿ>? x?嚵ۗEڰ@K?3c[RڰK?3c뽥R3@?5;L2?0}B?/quL2?/}B?/qu bk?Rs?b?%| bkRs?b?<%|??[?(i1nǿ?[?=i1n@@FFq]=G(?Y>]sL?d?P? ' =sLd?P?' =4 ?uoq?Q1?O/4 uoq?Q1?WO/r%?Pi?_>9er%Pi?_>"e^*?oA? p?e^*oA? p?^Geӎ?n"?3jӎn"?̋jz?<}2Ir?~Pz<}2Ir?~P}?!>܏f?{iG}!>܏f?iGh?k>8?u7#ahk>8?#a @P)>h?c-a^E P)>h?҅a^E, @(>"?fZiL, (>"?ZiL @%' ?1犘ٸ %' ?ٸF @!$r?m-*LF !$r?*L`i9@\cptCUR>-W?6o?4NV-W6o?˱NV?glņl?˯DKglņl?5PDK!?izg>F!izg>*Fm?Aʿ4&?;mAʿ4&?W&?̿*q?j,K&̿*q?!,K?R5Y9ϿR5ƬЗ룾Ԁ%т>/K^?ĤY>"-ܳM?Sb>PuJ?6?-1^U2SRE?0A?s\Xzfl>?3gϣ?djz>fl>?GB3gϣ>?j&т/K^? ĤYsR^=MԌ?] g>sR^=MԌ?\K] gݾ#>2M?&4}`>#>2M?A&4}`2?m?EXLQ`2>?m?#XLQ`bOuJ?6?1^Ut[Ѱըc ?scG17ѕ?xc>G17ѕ?x~{Ž>3M?w1r]<1Cm>2.?JCl}{>Ž>3M?1rtX=?|t>X=?H|lSU=0g?vY-J?ߔ>IMžu?>\VPY-?1m ƀm>h?"U9hmmƾh?"U9mM>u?>cVP2-a?>kcE6> ?1(x>J_(2-R?fX/iv?+%^>v?+L^6 ?1(x>c_(DATA 1F3QE1FH1F1F 1Fh 1F 1F(!1F!1F!1FX"1F"1F(#1F#1F$1Fh$1F$1F8%1F%1F&1F&1F'1Fx'1F'1FX(1F(1F8)1F)1F)1FX*1F*1F+1Fx+1F+1F8,1F,1F,1FX-1F-1F.1Fx.1F.1F8/1F/1F/1FX01F01F11FX11F11F21Fx21F21F831F31F31FX41F41F51Fh51F51F(61F61F61F(71F71F71F881F81F81FH91F91F:1Fh:1F:1F(;1F;1F;1FH<1F<1F=1Fh=1F=1F(>1F>1F>1FH?1F?1F@1Fh@1F@1F(A1FA1FA1FHB1FB1FC1FhC1FC1F(D1FD1FD1FHE1FE1FE1FHF1FF1FF1F8G1FG1FG1F(H1FxH1FH1FI1FI1FI1FXJ1FJ1FK1FxK1FK1FL1FhL1FL1FM1FxM1FM1F8N1FN1FN1FXO1FO1FP1FxP1FP1F8Q1FQ1FQ1FXR1FR1FS1FxS1FS1F8T1FXoYoYoYxoYȠoYoYxoYءoY8oYoYoYXoYoYoYhoYȤoY(oYoYoYHoYoYoYhoYȧoY8oYoYoYxoYةoY8oYȪoYHoYثoYXoYȬoYHoYȭoYHoYȮoY8oYoY(oYoY8oYȱoYHoYȲoYHoYȳoYHoYȴoY8oYoYoYoYoYhoYطoYHoYoY(oYoYDATA QE2I)?ۆ,=n_>b.o<V-?.=DATAH1F2QEQ?+ >DATA1F2>N?DATA 1F24?*q=$>DATAh 1F2%>I5?5=DATA 1F2V?=F,_=DATA(!1F2\=R?9=DATA!1F2?c>DATA !1F2\>,9Z<i?>bXDATA "1F2H><|>. *n$>KYB>L!>DATA &1F2@>$p >E>"!>DATA8&1F2;>(N= ~_<4_<j>{M=DATA '1F2>㜇=>S=DATA x'1F2N>Cw=e>O=DATA '1F2%>S=?K{=DATA X(1F2\>OS=kp>`4=DATA (1F2V>=.?U=DATA8)1F2׎=e?DATA)1F2Œ=de?DATA)1F2:=X? ~ /?DATA,1F2o>/?DATA,1F2Ŋ= Xm?DATAX-1F2Ŋ=Ym?DATA-1F2|= P`? HF;DATA.1F2=@`?M;DATAx.1F29> C?DATA.1F28>B?DATA8/1F2 >w> B?DATA/1F2w>MB?DATA/1F2 #i? aa=DATAX01F27i?`=DATA01F2 M~?DATA11F2M~?DATAX11F2 7j? q =DATA11F27j?/=DATA21F2!= at?DATAx21F2y=t?DATA21F2Tp? B~=DATA831F2o?K=DATA31F2t= )b?DATA31F2=ab?DATAX41F2O@G? R&c>DATA41F2F?ǟd>DATA51F2X?DATAh51F2?Ɋ>DATA51F2[?e=W;DATA(61F28Z?J=DATA61F2\v?DATA61F2Xv?DATA(71F2mk> -f?DATA71F2qk>-f?DATA71F2 }?DATA881F2*}?DATA81F2go? =DATA81F2wo?{J=DATAH91F2iY?F=DATA91F2~~Y?M=DATA:1F27V?5 >DATAh:1F2پV?ٚ >DATA:1F29?>qj>K/;DATA(;1F2`9:V%:?j>DATA;1F2>SD?.>6ی=DATA;1F2@=(AE? y>DATAH<1F2&>Y?DATA<1F2~>Y?DATA=1F2 n֜= &\?`i;DATAh=1F2 b;bn=\?DATA=1F2 :O< ٠p?DATA(>1F2V<p?DATA>1F2of= V> GI?DATA>1F2>I?lf=DATAH?1F2YQ= w-? `r>DATA?1F2 -?Xr>R=DATA@1F2 > l?DATAh@1F2>i?DATA@1F2 <= Tg?DATA(A1F2<=Sg?DATAA1F2 = g?DATAA1F2=g?DATAHB1F2 :> ?DATAB1F21>?DATAC1F2 zj?O=DATAhC1F22zj?S=DATAC1F2 #> W?DATA(D1F2# #>AW?DATAD1F2 Ųc?r=DATAD1F2uc?Z=DATAHE1F2 {?DATAE1F2c{?DATAE1F2 X9y?DATAHF1F2~?DATAF1F2z?DATAF1F2`G?DATA8G1F2?DATAG1F23(?DATAG1F2s~?DATA(H1F2&U?DATAxH1F2?DATAH1F2M?DATA I1F2> O<? FM>h*=DATA I1F2>=: ?-M>r>DATAI1F2 2ށ= k?DATAXJ1F2=k?DATAJ1F2 ,> m?DATAK1F2->m?DATAxK1F2 {?DATAhL1F2\?DATAL1F2T?c>DATAM1F2JT?>DATAxM1F2 r <ѧ=[^?DATAM1F2O=U^?)MW?DATAQ1F2e>W?DATAQ1F2O?B>DATAXR1F2O?B>DATAR1F2pr=bp?DATAS1F2sr=)bp?DATAxS1F2kT>?DATAS1F2sT>?DATA8T1F2>?DATAXoY24>?DATAoY2+J=o?DATAoY2oJ=io?DATAxoY2 ~?DATAȠoY2}?DATAoY2``;xx?DATAxoY2<x?DATAءoY2}=@(p?DATA8oY2 b=o?DATAoY25?5>DATAoY25?~ǔ>DATAXoY2(?DATAoY2q>C?DATAoY2 ,=}K?n=DATAhoY2K?mx=K74=DATAȤoY2ɋ=1m?DATA(oY2紋=X5m?DATAoY2 l?>DATAoY2k?>DATAHoY2>@?DATAoY2>B?DATAoY2>ާZ?DATAhoY2{>rZ?DATA ȧoY2>4<<՘>DATA8oY2M>>DATA oY2 )=^(?$=O?>DATA oY2 8C;>i<?J;DATAxoY2%? =Em>DATAةoY2j>҈>DATA@8oY2|\V< Ȇ;*=P>6= 0> =詗=DATA8ȪoY2 ;Zw=OT?!-=,1>PGQ; S Oψ=t>̦S=ch=q_<dGlM3?@,=4=DATA8ȬoY2 `= <aj=m!=F>1=ڶ(>DATA8HoY2> > ߸=2=5=<X=DATA8ȭoY2Ц= <.<J3=db>è}=P>DATA8HoY2> yW> 2=ٿz=D<<=DATA ȮoY23>9=Lj,?l{UDATA oY2F>Pc;*?\=DATA0(oY2cgH= V=3>W%>p=t =DATA@oY2Cj= vt=>iq>:͜>)'==DATA@8oY2= > =kl>+;P)>Ϣ=j]=DATA8ȱoY21> u=L==e>N<n>DATA0HoY2> =rN=tR=2=>DATA8ȲoY2v> n> ?=@c====>DATA8HoY2W= XҊ==i>u"> J=}>DATA8ȳoY2B> ==8>@==z=DATA0HoY2S> * >n+C>GG>71>9=DATA ȴoY2Y>=_=w!>hL_=DATA 8oY2>!l=>Tp=DATA oY2>>L=>v=DATA oY2>X=[>=DATA oY2c>=>n1^=DATA oY2+>$m=P>Bg=DATA hoY2f>o=(>l=DATA طoY2>c=u6>,=DATA HoY2Z><=m>s=DATA oY2ֱ>$=>zm=DATA (oY2>|a=s>e=DATA oY2y?>=/s>f=DATAhoYToYDATAoY1""""" " " " " " " " """ " """""""""##"" "!" ! ""#""$"#%" $"!%"$&"%'"&"'"(")"&( ') &*"'+"*,"+-"(,")-""."#/"$0"%1"*0"+1".0 /1 .4"/5"24 35 02"13"26"37"*6"+7",8"-9"68"79"6:"7;"2:"3;"4:"5;"8:"9;"<"="<"=">"?">"?""@"#A"(@")A",B"-C".B"/C"4D"5E"8D"9E">@"?A"@B"AC"BD"CE":D";E" F" G"F"G"H"I"H"I"J"K"J"K"L"M" L"!M"<N"=O">N"?O"FH"GI"FL"GM"JL"KM"JN"KO"HN"IO"P"Q"PR"QS"R"S"T"U" V" W"PV"QW"TV"UW"TX"UY"XZ Y[ VZ"W["Z\"[]"P\"Q]"R^"S_"\^"]_"\b"]c"`b"ac"^`"_a"Xf"Yg"Zd"[e"bd"ce"df eg fh"gi"hj"ik"dj"ek"jl"km"bl"cm"`n"ao"ln"mo"lp"mq"jp"kq"hp"iq"np"oq"r"s"r"s"Rt"Su"Tt"Uu"Xv"Yw"^v"_w"`x"ay"fx"gy"hz"i{"nz"o{"rt"su"tv"uw"vx"wy"xz"y{"pz"q{"~""|~"}"|"}"""|"}"""""""""""|"}"""~"" """""""""""" """"""""""""""""""""""""""~"""""""""""""""""""""""""" "" """" """ " " " " """" " "" """"""""""s"r"""""""="<""" """"""""""""""""""""""""""""##"#####################DATAhoYToYDATA0oY0       "$#!% $&%!'&(')(&*,+')-&$0*1%'+$".0/#%10.425/13*02631+7,*687+-986:;7962:;3724:;53>@"A?#>(@)?A"@B.CA#/@(,B-)AC.BD4EC/5B,8D9-CE4D:;E5D8:;9E FHIG FHGILF GM L F!MGLJMKJ L!KM<NJKO=N>J?OKHN<OI=H>N?IOPRQS VPW Q TVU WVTXZYUW[PVZ\[WQ]RP\^]QS_^\b`c]_a\Zdbe[]cZXfdgY[edfhjigekbdjlkecm`blnmcaonlpqmoljpqkmjhpqikrtTusUrRtSsuTtvXwuUYtR^v_SuwXvxfywYgv^`xa_wyfxzh{ygix`nzoay{hzpq{iznpqo{~|}|}|}|~}~~     srsr=<=<  ME8,)L.(oYMECube.1498Tt?ؽ^xPTt?ؽxb> [==#<-+b߾ [==-+=>x?n>&mg@<x?n>Omg@>0WF*?s@1ξ1WE*?s@1DanZ/ݠ`xv?퓾3Y0h>E!41RՁ?p>*KgP%?Ԝ>bbK5?Q,W*>K5?(,W+?Y3@v5?Tu愂>?2s>zeM?2s>M> z?\c2雲 z?2雲절?E>?5m?2JI절E>?5m?mJIz?F?t ?SzF?t ?*E?-?rv?ȩI{;E-?rv?8VI{;ИK?jΏ?q ?txYИKjΏ?q ?&xYY??n?k>Y󸿪?n?Tk>w?v?w!?>wv?w!?[Y>?{?0c?N6Ҳӿ{?0c?ɉҲk?>? x?eۗEkֿ>? x?嚵ۗEڰ@K?3c[RڰK?3c뽥R3@?5;L2?0}B?/quL2?/}B?/qu bk?Rs?b?%| bkRs?b?<%|??[?(i1nǿ?[?=i1n@@FFq]=G(?Y>]sL?d?P? ' =sLd?P?' =4 ?uoq?Q1?O/4 uoq?Q1?WO/r%?Pi?_>9er%Pi?_>"e^*?oA? p?e^*oA? p?^Geӎ?n"?3jӎn"?̋jz?<}2Ir?~Pz<}2Ir?~P}?!>܏f?{iG}!>܏f?iGh?k>8?u7#ahk>8?#a @P)>h?c-a^E P)>h?҅a^E, @(>"?fZiL, (>"?ZiL @%' ?1犘ٸ %' ?ٸF @!$r?m-*LF !$r?*L`i9@\cptCUR>-W?6o?4NV-W6o?˱NV?glņl?˯DKglņl?5PDK!?izg>F!izg>*Fm?Aʿ4&?;mAʿ4&?W&?̿*q?j,K&̿*q?!,K?R5Y9ϿR5ƬЗ룾Ԁ%т>/K^?ĤY>"-ܳM?Sb>PuJ?6?-1^U2SRE?0A?s\Xzfl>?3gϣ?djz>fl>?GB3gϣ>?j&т/K^? ĤYsR^=MԌ?] g>sR^=MԌ?\K] gݾ#>2M?&4}`>#>2M?A&4}`2?m?EXLQ`2>?m?#XLQ`bOuJ?6?1^Ut[Ѱըc ?scG17ѕ?xc>G17ѕ?x~{Ž>3M?w1r]<1Cm>2.?JCl}{>Ž>3M?1rtX=?|t>X=?H|lSU=0g?vY-J?ߔ>IMžu?>\VPY-?1m ƀm>h?"U9hmmƾh?"U9mM>u?>cVP2-a?>kcE6> ?1(x>J_(2-R?fX/iv?+%^>v?+L^6 ?1(x>c_(DATA H@)L3M)LM)LhN)LN)L(O)LO)LO)LHP)LP)LQ)LxQ)LQ)LHR)LR)L(S)LS)LS)LXT)LT)L8U)LU)L(V)LV)LW)LxW)LW)LXX)LX)LY)LxY)LY)L8Z)LZ)LZ)LX[)L[)L\)Lx\)L\)L8])L])L])LX^)L^)L_)Lx_)L_)L(`)Lx`)L`)L8a)La)La)LXb)Lb)Lc)Lxc)Lc)L8d)Ld)Ld)LHe)Le)Le)LHf)Lf)Lg)LXg)Lg)Lh)Lhh)Lh)L(i)Li)Li)LHj)Lj)Lk)Lhk)Lk)L(l)Ll)Ll)LHm)Lm)Ln)Lhn)Ln)L(o)Lo)Lo)LHp)Lp)Lq)Lhq)Lq)L(r)Lr)Lr)LHs)Ls)Lt)Lht)Lt)Lu)Lhu)Lu)Lv)LXv)Lv)Lv)LHw)Lw)Lw)L8x)LDHDDDhDDDhDDDhDD(DDDHDDDhDD(DDDHDDDhDD( D D DH D D DX D D Dh D D( D D D8DDDXDDDxDD8DDDXDD(DDDhDDXDDhDDXDDXDDXDDHDD8DDXDDXDDXDDXDD8 D D!D!D!Dh"D"DH#D#D($DDATA M)L2I)?ۆ,=n_>b.o<V-?.=DATAhN)L2QEQ?+ >DATAN)L2>N?DATA(O)L24?*q=$>DATAO)L2%>I5?5=DATAO)L2V?=F,_=DATAHP)L2\=R?9=DATAP)L2?c>DATA Q)L2\>,9Z<i?>bXDATA Q)L2H><|>. *n$>KYB>L!>DATA 8U)L2@>$p >E>"!>DATA8U)L2;>(N= ~_<4_<j>{M=DATA (V)L2>㜇=>S=DATA V)L2N>Cw=e>O=DATA W)L2%>S=?K{=DATA xW)L2\>OS=kp>`4=DATA W)L2V>=.?U=DATAXX)L2׎=e?DATAX)L2Œ=de?DATAY)L2:=X? ~ /?DATA[)L2o>/?DATA\)L2Ŋ= Xm?DATAx\)L2Ŋ=Ym?DATA\)L2|= P`? HF;DATA8])L2=@`?M;DATA])L29> C?DATA])L28>B?DATAX^)L2 >w> B?DATA^)L2w>MB?DATA_)L2 #i? aa=DATAx_)L27i?`=DATA_)L2 M~?DATA(`)L2M~?DATAx`)L2 7j? q =DATA`)L27j?/=DATA8a)L2!= at?DATAa)L2y=t?DATAa)L2Tp? B~=DATAXb)L2o?K=DATAb)L2t= )b?DATAc)L2=ab?DATAxc)L2O@G? R&c>DATAc)L2F?ǟd>DATA8d)L2X?DATAd)L2?Ɋ>DATAd)L2[?e=W;DATAHe)L28Z?J=DATAe)L2\v?DATAe)L2Xv?DATAHf)L2mk> -f?DATAf)L2qk>-f?DATAg)L2 }?DATAXg)L2*}?DATAg)L2go? =DATAh)L2wo?{J=DATAhh)L2iY?F=DATAh)L2~~Y?M=DATA(i)L27V?5 >DATAi)L2پV?ٚ >DATAi)L29?>qj>K/;DATAHj)L2`9:V%:?j>DATAj)L2>SD?.>6ی=DATAk)L2@=(AE? y>DATAhk)L2&>Y?DATAk)L2~>Y?DATA(l)L2 n֜= &\?`i;DATAl)L2 b;bn=\?DATAl)L2 :O< ٠p?DATAHm)L2V<p?DATAm)L2of= V> GI?DATAn)L2>I?lf=DATAhn)L2YQ= w-? `r>DATAn)L2 -?Xr>R=DATA(o)L2 > l?DATAo)L2>i?DATAo)L2 <= Tg?DATAHp)L2<=Sg?DATAp)L2 = g?DATAq)L2=g?DATAhq)L2 :> ?DATAq)L21>?DATA(r)L2 zj?O=DATAr)L22zj?S=DATAr)L2 #> W?DATAHs)L2# #>AW?DATAs)L2 Ųc?r=DATAt)L2uc?Z=DATAht)L2 {?DATAt)L2c{?DATAu)L2 X9y?DATAhu)L2~?DATAu)L2z?DATAv)L2`G?DATAXv)L2?DATAv)L23(?DATAv)L2s~?DATAHw)L2&U?DATAw)L2?DATAw)L2M?DATA 8x)L2> O<? FM>h*=DATA D2>=: ?-M>r>DATAHD2 2ށ= k?DATAD2=k?DATAD2 ,> m?DATAhD2->m?DATAD2 {?DATAD2\?DATAD2T?c>DATAhD2JT?>DATAD2 r <ѧ=[^?DATA(D2O=U^?)MW?DATAD2e>W?DATAHD2O?B>DATAD2O?B>DATAD2pr=bp?DATAhD2sr=)bp?DATAD2kT>?DATA( D2sT>?DATA D2>?DATA D24>?DATAH D2+J=o?DATA D2oJ=io?DATA D2 ~?DATAX D2}?DATA D2``;xx?DATA D2<x?DATAh D2}=@(p?DATA D2 b=o?DATA( D25?5>DATA D25?~ǔ>DATA D2(?DATA8D2q>C?DATAD2 ,=}K?n=DATAD2K?mx=K74=DATAXD2ɋ=1m?DATAD2紋=X5m?DATAD2 l?>DATAxD2k?>DATAD2>@?DATA8D2>B?DATAD2>ާZ?DATAD2{>rZ?DATA XD2>4<<՘>DATAD2M>>DATA (D2 )=^(?$=O?>DATA D2 8C;>i<?J;DATAD2%? =Em>DATAhD2j>҈>DATA@D2|\V< Ȇ;*=P>6= 0> =詗=DATA8XD2 ;Zw=OT?!-=,1>PGQ; S Oψ=t>̦S=ch=q_<dGlM3?@,=4=DATA8XD2 `= <aj=m!=F>1=ڶ(>DATA8D2> > ߸=2=5=<X=DATA8XD2Ц= <.<J3=db>è}=P>DATA8D2> yW> 2=ٿz=D<<=DATA XD23>9=Lj,?l{UDATA HD2F>Pc;*?\=DATA0D2cgH= V=3>W%>p=t =DATA@8D2Cj= vt=>iq>:͜>)'==DATA@D2= > =kl>+;P)>Ϣ=j]=DATA8XD21> u=L==e>N<n>DATA0D2> =rN=tR=2=>DATA8XD2v> n> ?=@c====>DATA8D2W= XҊ==i>u"> J=}>DATA8XD2B> ==8>@==z=DATA0D2S> * >n+C>GG>71>9=DATA XD2Y>=_=w!>hL_=DATA D2>!l=>Tp=DATA 8 D2>>L=>v=DATA D2>X=[>=DATA !D2c>=>n1^=DATA !D2+>$m=P>Bg=DATA !D2f>o=(>l=DATA h"D2>c=u6>,=DATA "D2Z><=m>s=DATA H#D2ֱ>$=>zm=DATA #D2>|a=s>e=DATA ($D2y?>=/s>f=DATAh$DTH&DDATAH&D1""""" " " " " " " " """ " """""""""##"" "!" ! ""#""$"#%" $"!%"$&"%'"&"'"(")"&( ') &*"'+"*,"+-"(,")-""."#/"$0"%1"*0"+1".0 /1 .4"/5"24 35 02"13"26"37"*6"+7",8"-9"68"79"6:"7;"2:"3;"4:"5;"8:"9;"<"="<"=">"?">"?""@"#A"(@")A",B"-C".B"/C"4D"5E"8D"9E">@"?A"@B"AC"BD"CE":D";E" F" G"F"G"H"I"H"I"J"K"J"K"L"M" L"!M"<N"=O">N"?O"FH"GI"FL"GM"JL"KM"JN"KO"HN"IO"P"Q"PR"QS"R"S"T"U" V" W"PV"QW"TV"UW"TX"UY"XZ Y[ VZ"W["Z\"[]"P\"Q]"R^"S_"\^"]_"\b"]c"`b"ac"^`"_a"Xf"Yg"Zd"[e"bd"ce"df eg fh"gi"hj"ik"dj"ek"jl"km"bl"cm"`n"ao"ln"mo"lp"mq"jp"kq"hp"iq"np"oq"r"s"r"s"Rt"Su"Tt"Uu"Xv"Yw"^v"_w"`x"ay"fx"gy"hz"i{"nz"o{"rt"su"tv"uw"vx"wy"xz"y{"pz"q{"~""|~"}"|"}"""|"}"""""""""""|"}"""~"" """""""""""" """"""""""""""""""""""""""~"""""""""""""""""""""""""" "" """" """ " " " " """" " "" """"""""""s"r"""""""="<""" """"""""""""""""""""""""""""##"#####################DATAh:DT8@"A?#>(@)?A"@B.CA#/@(,B-)AC.BD4EC/5B,8D9-CE4D:;E5D8:;9E FHIG FHGILF GM L F!MGLJMKJ L!KM<NJKO=N>J?OKHN<OI=H>N?IOPRQS VPW Q TVU WVTXZYUW[PVZ\[WQ]RP\^]QS_^\b`c]_a\Zdbe[]cZXfdgY[edfhjigekbdjlkecm`blnmcaonlpqmoljpqkmjhpqikrtTusUrRtSsuTtvXwuUYtR^v_SuwXvxfywYgv^`xa_wyfxzh{ygix`nzoay{hzpq{iznpqo{~|}|}|}|~}~~     srsr=<=<  BRMDShTDBRAddh.001?XRD??????????L>????????????????????????????? # Kfff?=???L>??>!>???DATA ND??????????L>?????????????????????????????DATA@XRDO????C?~6=~.=SD??????DATA0SDM?>k?@? ף=?BRhTDSYDMDBRBlob001?WD??????????L>?????????????????????????????# Kfff?=??????>!>?>>>>?DATATD??????????L>?????????????????????????????DATA@WDO????C?._ra8YD??????DATA08YDM?>ףp?@?u=?BRYDS_DhTDBRBlur.004?\D??????????L>????????????????????????????? # Kfff?=???L>??>!>???DATA ZD??????????L>?????????????????????????????DATA@\DO????C?~6=~.=^D??????DATA0^DM?>k?@? ף=?BR_DSXdDYDBRBrush?HbD??????????L>?????????????????????????????# Kfff?=??????>!?>>>>?DATAp_D??????????L>?????????????????????????????DATA@HbDO????C?._racD??????DATA0cDM?>ףp?@?u=?BRXdDSiD_DBRClay001?gD??????????L>?????????????????????????????# Kfff?=??????>!>?>>>>?DATAdD??????????L>?????????????????????????????DATA@gDO????C?._ra(iD??????DATA0(iDM?>ףp?@?u=?BRiDSnDXdDBRClone001?lD??????????L>?????????????????????????????# Kfff?=???333???>!>???DATAjD??????????L>?????????????????????????????DATA@lDO????C?~6=~.=xnD??????DATA0xnDM?>k?@? ף=?BRnDSHtDiDBRCrease001?8rD??????????L>?????????????????????????????# Kfff?=???>??>!>?>>>>?DATA`oD??????????L>?????????????????????????????DATA@8rDO????C?a2p? sD??????DATA0sDM?>?@? #=?BRHtDSyDnDBRDarken06?wD??????????L>????????????????????????????? # Kfff?=???L>??>!>???DATAtD??????????L>?????????????????????????????DATA@wDO????C?~6=~.=yD??????DATA0yDM?>k?@? ף=?BRyDS~DHtDBRDraw.001?|D??????????L>?????????????????????????????# Kfff?=??????>!>?>>>>?DATAzD??????????L>?????????????????????????????DATA@|DO????C?._rah~D??????DATA0h~DM?>ףp?@?u=?BR~DS8DyDBRFill/Deepen001?(D??????????L>?????????????????????????????# Kfff?=???? ??>!>??>>??DATAPD??????????L>?????????????????????????????DATA@(DO????C?._raD??????DATA0DM?>ףp?@?u=?BR8DSD~DBRFlatten/Contrast001?xD??????????L>?????????????????????????????# Kfff?=??????>!>??>>??DATAD??????????L>?????????????????????????????DATA@xDO????C?._raD??????DATA0DM?>ףp?@?u=?BRDS؎D8DBRGrab001?ȌD??????????L>?????????????????????????????K Kfff?=???L>??>!>>?>DATAD??????????L>?????????????????????????????DATA@ȌDO????C?._raXD??????DATA0XDM?>ףp?@?u=?BR؎DS(DDBRInflate/Deflate001?D??????????L>?????????????????????????????# Kfff?=??????>!>@?@?@?>>>DATA@D??????????L>?????????????????????????????DATA@DO????C?._raD??????DATA0DM?>ףp?@?u=?BR(DSxD؎DBRLayer001?hD??????????L>?????????????????????????????# Kfff?=??????>!>?>>DATAD??????????L>?????????????????????????????DATA@hDO????C?._raD??????DATA0DM?>ףp?@?u=?BRxDSȞD(DBRLighten5?D??????????L>????????????????????????????? # Kfff?=???L>??>!>???DATAD??????????L>?????????????????????????????DATA@DO????C?~6=~.=HD??????DATA0HDM?>k?@? ף=?BRȞDSDxDBRMixh?D??????????L>????????????????????????????? # Kfff?=???333???>!>???DATA0D??????????L>?????????????????????????????DATA@DO????C?~6=~.=D??????DATA0DM?>k?@? ף=?BRDShDȞDBRMultiply?XD??????????L>????????????????????????????? # Kfff?=???L>??>!>???DATAD??????????L>?????????????????????????????DATA@XDO????C?~6=~.=訦D??????DATA0訦DM?>k?@? ף=?BRhDSDDBRNudge001?D??????????L>?????????????????????????????# Kfff?=???? ??>!>>?>DATAЩD??????????L>?????????????????????????????DATA@DO????C?._ra8D??????DATA08DM?>ףp?@?u=?BRDSDhDBRPinch/Magnify001?D??????????L>?????????????????????????????# Kfff?=??????>!>@?@?@?>>>DATA D??????????L>?????????????????????????????DATA@DO????C?._raD??????DATA0DM?>ףp?@?u=?BRDSXDDBRPolish001?HD??????????L>?????????????????????????????# Kfff?=???????>!>??>>??DATApD??????????L>?????????????????????????????DATA@HDO????C?._raظD??????DATA0ظDM?>ףp?@?u=?BRXDSDDBRScrape/Peaks001?D??????????L>?????????????????????????????# Kfff?=???? ??>!>??>>??DATAD??????????L>?????????????????????????????DATA@DO????C?._ra(D??????DATA0(DM?>ףp?@?u=?BRDSæDXDBRSculptDraw?D??????????L>?????????????????????????????# Kfff?=??????>!wN??>>>>?DATAD??????????L>?????????????????????????????DATA@DO????C?._raxæD??????DATA0xæDM?>ףp?@?u=?BRæDSHɦDDBRSmear001?8ǦD??????????L>?????????????????????????????# Kfff?=???L>??>!>???DATA`ĦD??????????L>?????????????????????????????DATA@8ǦDO????C?~6=~.=ȦD??????DATA0ȦDM?>k?@? ף=?BRHɦDSΦDæDBRSmooth001?̦D??????????L>?????????????????????????????#Kfff?=??????>!>@?@?@?DATAɦD??????????L>?????????????????????????????DATA@̦DO????C?._raΦD??????DATA0ΦDM?>ףp?@?u=?BRΦDSӦDHɦDBRSnake Hook001?ѦD??????????L>?????????????????????????????K Kfff?=???? ??>!>>?>DATAϦD??????????L>?????????????????????????????DATA@ѦDO????C?._rahӦD??????DATA0hӦDM?>ףp?@?u=?BRӦDS8٦DΦDBRSoften01?(צD??????????L>?????????????????????????????# Kfff?=???L>??>!>???DATAPԦD??????????L>?????????????????????????????DATA@(צDO????C?~6=~.=ئD??????DATA0ئDM?>k?@? ף=?BR8٦DSަDӦDBRSubtract?xܦD??????????L>????????????????????????????? # Kfff?=???L>??>!>???DATA٦D??????????L>?????????????????????????????DATA@xܦDO????C?~6=~.=ަD??????DATA0ަDM?>k?@? ף=?BRަDSD8٦DBRTexDraw?D??????????L>?????????????????????????????# Kfff?=???333???>!>???>>?DATAަD??????????L>?????????????????????????????DATA@DO????C?._raXD??????DATA0XDM?>ףp?@?u=?BRDS(DަDBRThumb001?D??????????L>?????????????????????????????K Kfff?=???? ??>!>>?>DATA@D??????????L>?????????????????????????????DATA@DO????C?._raD??????DATA0DM?>ףp?@?u=?BR(DSDBRTwist001?hD??????????L>?????????????????????????????K Kfff?=??????>!>>?>DATAD??????????L>?????????????????????????????DATA@hDO????C?._raD??????DATA0DM?>ףp?@?u=?DNA1xDSDNANAME *next*prev*data*first*lastxyxminxmaxyminymax*pointergroupvalval2typesubtypeflagname[32]saveddatalentotallen*newid*libname[24]usicon_id*propertiesid*idblock*filedataname[240]filepath[240]totpad*parentw[2]h[2]changed[2]changed_timestamp[2]*rect[2]*obblocktypeadrcodename[128]*bp*beztmaxrcttotrctvartypetotvertipoextraprtbitmaskslide_minslide_maxcurval*drivercurvecurshowkeymuteipoposrelativetotelempad2*weightsvgroup[32]sliderminslidermax*adt*refkeyelemstr[32]elemsizeblock*ipo*fromtotkeyslurph*line*formatblenlinenostartendpad1flagscolor[4]pad[4]*namenlineslines*curl*sellcurcselcmarkers*undo_bufundo_posundo_len*compiledmtimesizeseekdtxpassepartalphaclipstaclipendlensortho_scaledrawsizeshiftxshiftyYF_dofdist*dof_ob*sceneframenrframesoffsetsfrafie_imacyclokmulti_indexlayerpassibufs*gputexture*anim*rr*renders[8]render_slotlast_render_slotsourcelastframetpageflagtotbindxrepyreptwstatwendbindcode*repbind*packedfile*previewlastupdatelastusedanimspeedgen_xgen_ygen_typeaspxaspytexcomaptomaptonegblendtype*object*texuvname[32]projxprojyprojzmappingofs[3]size[3]rottexflagcolormodelpmaptopmaptonegnormapspacewhich_outputbrush_map_modepad[7]rgbkdef_varcolfacvarfacnorfacdispfacwarpfaccolspecfacmirrfacalphafacdifffacspecfacemitfachardfacraymirrfactranslfacambfaccolemitfaccolreflfaccoltransfacdensfacscatterfacreflfactimefaclengthfacclumpfacdampfackinkfacroughfacpadensfacgravityfaclifefacsizefacivelfacfieldfacshadowfaczenupfaczendownfacblendfacname[160]*handle*pname*stnamesstypesvars*varstr*result*cfradata[32](*doit)()(*instance_init)()(*callback)()versionaipotype*ima*cube[6]imat[4][4]obimat[3][3]stypeviewscalenotlaycuberesdepthrecalclastsizefalloff_typefalloff_softnessradiuscolor_sourcetotpointspdpadpsyspsys_cache_spaceob_cache_space*point_tree*point_datanoise_sizenoise_depthnoise_influencenoise_basispdpad3[3]noise_facspeed_scalefalloff_speed_scalepdpad2*coba*falloff_curveresol[3]interp_typefile_formatextendsmoked_typeint_multiplierstill_framesource_path[240]*datasetcachedframenoisesizeturbulbrightcontrastsaturationrfacgfacbfacfiltersizemg_Hmg_lacunaritymg_octavesmg_offsetmg_gaindist_amountns_outscalevn_w1vn_w2vn_w3vn_w4vn_mexpvn_distmvn_coltypenoisedepthnoisetypenoisebasisnoisebasis2imaflagcropxmincropymincropxmaxcropymaxtexfilterafmaxxrepeatyrepeatcheckerdistnablaiuser*nodetree*plugin*env*pd*vduse_nodesloc[3]rot[3]mat[4][4]min[3]max[3]modetotexshdwrshdwgshdwbshdwpadenergydistspotsizespotblendhaintatt1att2*curfalloffshadspotsizebiassoftcompressthreshpad5[3]bufsizesampbuffersfiltertypebufflagbuftyperay_sampray_sampyray_sampzray_samp_typearea_shapearea_sizearea_sizeyarea_sizezadapt_threshray_samp_methodtexactshadhalostepsun_effect_typeskyblendtypehorizon_brightnessspreadsun_brightnesssun_sizebackscattered_lightsun_intensityatm_turbidityatm_inscattering_factoratm_extinction_factoratm_distance_factorskyblendfacsky_exposuresky_colorspacepad4[6]*mtex[18]pr_texturepad6[6]densityemissionscatteringreflectionemission_col[3]transmission_col[3]reflection_col[3]density_scaledepth_cutoffasymmetrystepsize_typeshadeflagshade_typeprecache_resolutionstepsizems_diffms_intensityms_spreadmaterial_typespecrspecgspecbmirrmirgmirbambrambbambgambemitangspectraray_mirroralpharefspeczoffsaddtranslucencyvolfresnel_mirfresnel_mir_ifresnel_trafresnel_tra_ifiltertx_limittx_falloffray_depthray_depth_traharseed1seed2gloss_mirgloss_trasamp_gloss_mirsamp_gloss_traadapt_thresh_miradapt_thresh_traaniso_gloss_mirdist_mirfadeto_mirshade_flagmode_lflarecstarclinecringchasizeflaresizesubsizeflarebooststrand_stastrand_endstrand_easestrand_surfnorstrand_minstrand_widthfadestrand_uvname[32]sbiaslbiasshad_alphaseptexrgbselpr_typepr_backpr_lampml_flagdiff_shaderspec_shaderroughnessrefracparam[4]rmsdarkness*ramp_col*ramp_specrampin_colrampin_specrampblend_colrampblend_specramp_showpad3rampfac_colrampfac_spec*groupfrictionfhreflectfhdistxyfrictdynamodesss_radius[3]sss_col[3]sss_errorsss_scalesss_iorsss_colfacsss_texfacsss_frontsss_backsss_flagsss_presetmapto_texturedshadowonly_flagindexgpumaterialname[256]*bbi1j1k1i2j2k2selcol1selcol2zquat[4]expxexpyexpzradrad2s*mat*imatelemsdisp*editelems**matflag2totcolwiresizerendersizethresh*lastelemvec[3][3]alfaweighth1h2f1f2f3hidevec[4]mat_nrpntsupntsvresoluresolvorderuordervflaguflagv*knotsu*knotsvtilt_interpradius_interpcharidxkernwhnurbs*keyindexshapenrnurb*editnurb*bevobj*taperobj*textoncurve*path*keybevdrawflagtwist_modetwist_smoothsmallcaps_scalepathlenbevresolwidthext1ext2resolu_renresolv_renactnu*lastselspacemodespacinglinedistshearfsizewordspaceulposulheightxofyoflinewidth*str*selboxes*editfontfamily[24]*vfont*vfontb*vfonti*vfontbisepcharctimetotboxactbox*tbselstartselend*strinfocurinfo*mface*mtface*tface*mvert*medge*dvert*mcol*msticky*texcomesh*mselect*edit_meshvdataedatafdatatotedgetotfacetotselectact_facesmoothreshsubdivsubdivrsubsurftypeeditflag*mr*pv*tpageuv[4][2]col[4]transptileunwrapv1v2v3v4edcodecreasebweightdef_nr*dwtotweightco[3]no[3]uv[2]co[2]fis[256]totdisp(*disps)()v[4]midpad[2]v[2]*faces*colfaces*edges*vertslevelslevel_countcurrentnewlvledgelvlpinlvlrenderlvluse_col*edge_flags*edge_creases*vert_map*edge_map*old_faces*old_edgesstackindex*errormodifier*texture*map_objectuvlayer_name[32]uvlayer_tmptexmappingsubdivTyperenderLevels*emCache*mCachedefaxispad[6]lengthrandomizeseed*ob_arm*start_cap*end_cap*curve_ob*offset_oboffset[3]scale[3]merge_distfit_typeoffset_typecountaxistolerance*mirror_obsplit_anglevalueresval_flagslim_flagse_flagsbevel_angledefgrp_name[32]*domain*flow*colltimepad10strengthdirectionmidlevel*projectors[10]*imagenum_projectorsaspectxaspectyscalexscaleypercentfaceCountfacrepeat*objectcenterstartxstartyheightnarrowspeeddampfallofftimeoffslifetimedeformflagmulti*prevCossubtarget[32]parentinv[4][4]cent[3]*indexartotindexforce*clothObject*sim_parms*coll_parms*point_cacheptcaches*x*xnew*xold*current_xnew*current_x*current_v*mfacesnumvertsnumfacestime_xtime_xnew*bvhtree*v*dmcfraoperationvertextotinfluencegridsize*bindinfluences*bindoffsets*bindcagecostotcagevert*dyngrid*dyninfluences*dynverts*pad2dyngridsizedyncellmin[3]dyncellwidthbindmat[4][4]*bindweights*bindcos(*bindfunc)()*psystotdmverttotdmedgetotdmfacepositionrandom_position*facepavgroupprotectlvlsculptlvltotlvlsimple*fss*target*auxTargetvgroup_name[32]keepDistshrinkTypeshrinkOptsprojAxissubsurfLevels*originfactorlimit[2]originOptsoffset_faccrease_innercrease_outercrease_rimmat_ofsmat_ofs_rim*ob_axisstepsrender_stepsiterscrew_ofsangle*object_from*object_tofalloff_radius*lattpntswopntsuopntsvopntswtypeutypevtypewfufvfwdudvdw*def*latticedatalatmat[4][4]*editlattvec[8][3]*sculptpartypepar1par2par3parsubstr[32]*track*proxy*proxy_group*proxy_from*action*poselib*pose*gpdavs*mpathconstraintChannelseffectdefbasemodifiersrestore_mode*matbitsactcoldloc[3]orig[3]dsize[3]drot[3]dquat[4]rotAxis[3]drotAxis[3]rotAngledrotAngleobmat[4][4]constinv[4][4]imat_ren[4][4]laycolbitstransflagprotectflagtrackflagupflagnlaflagipoflagipowinscaflagscavisflagboundtypedupondupoffdupstadupendsfmassdampinginertiaformfactorrdampingmarginmax_velmin_velm_contactProcessingThresholdrotmodedtempty_drawtypepad1[3]empty_drawsizedupfacescapropsensorscontrollersactuatorsbbsize[3]actdefgameflaggameflag2*bsoftsoftflaganisotropicFriction[3]constraintsnlastripshooksparticlesystem*soft*dup_groupfluidsimFlagrestrictflagshapeflagrecalcobody_type*fluidsimSettings*derivedDeform*derivedFinallastDataMaskcustomdata_maskstateinit_stategpulamppc_ids*duplilistima_ofs[2]pad3[8]curindexactiveoriglayno_drawanimatedomat[4][4]orco[3]deflectforcefieldshapetex_modekinkkink_axiszdirf_strengthf_dampf_flowf_sizef_powermaxdistmindistf_power_rmaxradminradpdef_damppdef_rdamppdef_permpdef_frictpdef_rfrictpdef_sticknessabsorptionpdef_sbdamppdef_sbiftpdef_sboftclump_facclump_powkink_freqkink_shapekink_ampfree_endtex_nabla*rngf_noiseweight[13]global_gravityrt[3]totdataframetotpointdata_types*data[8]*cur[8]extradatastepsimframestartframeendframeeditframelast_exactcompressionname[64]prev_name[64]info[64]path[240]*cached_framesmem_cache*edit(*free_edit)()linStiffangStiffvolumeviterationspiterationsditerationsciterationskSRHR_CLkSKHR_CLkSSHR_CLkSR_SPLT_CLkSK_SPLT_CLkSS_SPLT_CLkVCFkDPkDGkLFkPRkVCkDFkMTkCHRkKHRkSHRkAHRcollisionflagsnumclusteriterationsweldingtotspring*bpoint*bspringmsg_lockmsg_valuenodemassnamedVG_Mass[32]gravmediafrictrklimitphysics_speedgoalspringgoalfrictmingoalmaxgoaldefgoalvertgroupnamedVG_Softgoal[32]fuzzynessinspringinfrictnamedVG_Spring_K[32]efraintervallocalsolverflags**keystotpointkeysecondspringcolballballdampballstiffsbc_modeaeroedgeminloopsmaxloopschokesolver_IDplasticspringpreload*scratchshearstiffinpush*pointcache*effector_weightslcom[3]lrot[3][3]lscale[3][3]pad4[4]vel[3]*fmdshow_advancedoptionsresolutionxyzpreviewresxyzrealsizeguiDisplayModerenderDisplayModeviscosityValueviscosityModeviscosityExponentgrav[3]animStartanimEndbakeStartbakeEndgstarmaxRefineiniVelxiniVelyiniVelz*orgMesh*meshBBsurfdataPath[240]bbStart[3]bbSize[3]typeFlagsdomainNovecgenvolumeInitTypepartSlipValuegenerateTracersgenerateParticlessurfaceSmoothingsurfaceSubdivsparticleInfSizeparticleInfAlphafarFieldSize*meshVelocitiescpsTimeStartcpsTimeEndcpsQualityattractforceStrengthattractforceRadiusvelocityforceStrengthvelocityforceRadiuslastgoodframemistypehorrhorghorbzenrzengzenbfastcolexposureexprangelinfaclogfacgravityactivityBoxRadiusskytypeocclusionResphysicsEngineticratemaxlogicstepphysubstepmaxphystepmisimiststamistdistmisthistarrstargstarbstarkstarsizestarmindiststardiststarcolnoisedofstadofenddofmindofmaxaodistaodistfacaoenergyaobiasaomodeaosampaomixaocolorao_adapt_threshao_adapt_speed_facao_approx_errorao_approx_correctionao_indirect_energyao_env_energyao_pad2ao_indirect_bouncesao_padao_samp_methodao_gather_methodao_approx_passes*aosphere*aotablespad[3]selcolsxsy*lpFormat*lpParmscbFormatcbParmsfccTypefccHandlerdwKeyFrameEverydwQualitydwBytesPerSeconddwFlagsdwInterleaveEveryavicodecname[128]*cdParms*padcdSizeqtcodecname[128]codecTypecodecSpatialQualitycodeccodecFlagscolorDepthcodecTemporalQualityminSpatialQualityminTemporalQualitykeyFrameRatebitRateaudiocodecTypeaudioSampleRateaudioBitDepthaudioChannelsaudioCodecFlagsaudioBitRateaudio_codecvideo_bitrateaudio_bitrateaudio_mixrateaudio_volumegop_sizerc_min_raterc_max_raterc_buffer_sizemux_packet_sizemux_ratemixratemainspeed_of_sounddoppler_factordistance_model*mat_override*light_overridelay_zmasklayflagpassflagpass_xor*avicodecdata*qtcodecdataqtcodecsettingsffcodecdatasubframepsfrapefraimagesframaptothreadsframelenblurfacedgeRedgeGedgeBfullscreenxplayyplayfreqplayattribframe_stepstereomodedimensionspresetmaximsizexschyschxpartsypartsplanesimtypesubimtypequalitydisplaymodescemoderaytrace_optionsraytrace_structurerendererocrespad4alphamodeosafrs_secedgeintsafetyborderdisprectlayersactlaymblur_samplesxaspyaspfrs_sec_basegausscolor_mgt_flagpostgammaposthuepostsatdither_intensitybake_osabake_filterbake_modebake_flagbake_normal_spacebake_quad_splitbake_maxdistbake_biasdistbake_padpic[240]stampstamp_font_idstamp_udata[160]fg_stamp[4]bg_stamp[4]seq_prev_typeseq_rend_typeseq_flagpad5[5]simplify_flagsimplify_subsurfsimplify_shadowsamplessimplify_particlessimplify_aossscineonwhitecineonblackcineongammajp2_presetjp2_depthrpad3domeresdomemodedomeangledometiltdomeresbuf*dometextengine[32]particle_percsubsurf_maxshadbufsample_maxao_errortiltresbuf*warptextcol[3]matmodeframingrt1rt2domestereoflageyeseparation*camera*brush*paint_cursorpaint_cursor_col[4]paintseam_bleednormal_anglescreen_grab_size[2]*paintcursorinverttotrekeytotaddkeybrushtypebrush[7]emitterdistselectmodeedittypedraw_stepfade_framesname[36]mat[3][3]radial_symm[3]last_xlast_ylast_angledraw_anchoredanchored_sizeanchored_location[3]anchored_initial_mouse[2]draw_pressurepressure_valuespecial_rotation*vpaint_prev*wpaint_prev*vpaint*wpaintvgroup_weightcornertypeeditbutflagjointrilimitdegrturnextr_offsdoublimitnormalsizeautomergesegmentsringsverticesunwrapperuvcalc_radiusuvcalc_cubesizeuvcalc_marginuvcalc_mapdiruvcalc_mapalignuvcalc_flaguv_flaguv_selectmodeuv_padgpencil_flagsautoik_chainlenimapaintparticleproportional_sizeselect_threshclean_threshautokey_modeautokey_flagretopo_moderetopo_paint_toolline_divellipse_divretopo_hotspotmultires_subdiv_typeskgen_resolutionskgen_threshold_internalskgen_threshold_externalskgen_length_ratioskgen_length_limitskgen_angle_limitskgen_correlation_limitskgen_symmetry_limitskgen_retarget_angle_weightskgen_retarget_length_weightskgen_retarget_distance_weightskgen_optionsskgen_postproskgen_postpro_passesskgen_subdivisions[3]skgen_multi_level*skgen_templatebone_sketchingbone_sketching_convertskgen_subdivision_numberskgen_retarget_optionsskgen_retarget_rollskgen_side_string[8]skgen_num_string[8]edge_modeedge_mode_live_unwrapsnap_modesnap_flagsnap_targetproportionalprop_modeproportional_objectsauto_normalizesculpt_paint_settingssculpt_paint_unified_sizesculpt_paint_unified_unprojected_radiussculpt_paint_unified_alphatotobjtotlamptotobjseltotcurvetotmeshtotarmaturescale_lengthsystemsystem_rotationgravity[3]quick_cache_step*world*setbase*basact*obeditcursor[3]twcent[3]twmin[3]twmax[3]layactlay_updatedcustomdata_mask_modal*ed*toolsettings*statsaudiotransform_spaces*sound_scene*sound_scene_handle*sound_scrub_handle*fps_info*theDagdagisvaliddagflagspad6pad5active_keyingsetkeyingsetsgmunitphysics_settingsblendviewwinmat[4][4]viewmat[4][4]viewinv[4][4]persmat[4][4]persinv[4][4]viewmatob[4][4]persmatob[4][4]twmat[4][4]viewquat[4]zfaccamdxcamdypixsizecamzoomtwdrawflagis_persprflagviewlockperspclip[6][4]clip_local[6][4]*clipbb*localvd*ri*depths*sms*smooth_timerlviewquat[4]lpersplviewgridviewtwangle[3]padfregionbasespacetypeblockscaleblockhandler[8]lay_used*ob_centrebgpicbase*bgpicob_centre_bone[32]drawtypeob_centre_cursorscenelockaroundgridnearfarmodeselectgridlinesgridsubdivgridflagtwtypetwmodetwflagpad2[2]afterdraw_transpafterdraw_xrayafterdraw_xraytranspzbufxrayndofmodendoffilter*properties_storageverthormaskmin[2]max[2]minzoommaxzoomscrollscroll_uikeeptotkeepzoomkeepofsalignwinxwinyoldwinxoldwiny*tab_offsettab_numtab_currpt_maskv2d*adsghostCurvesautosnapcursorValmainbmainbomainbuserre_alignpreviewtexture_contextpathflagdataicon*pinidrender_sizechanshownzebrazoomtitle[32]dir[240]file[80]renamefile[80]renameedit[80]filter_glob[64]active_filesel_firstsel_lastsortdisplayf_fpfp_str[8]scroll_offset*params*files*folders_prev*folders_next*op*smoothscroll_timer*layoutrecentnrbookmarknrsystemnrtree*treestoresearch_string[32]search_tseoutlinevisstoreflagsearch_flags*cumapscopessample_line_histcursor[2]centxcentycurtileimtypenrlockpindt_uvstickydt_uvstretch*texttopviewlinesmenunrlheightcwidthlinenrs_totleftshowlinenrstabnumbershowsyntaxline_hlightoverwritelive_editpix_per_linetxtscrolltxtbarwordwrapdopluginsfindstr[256]replacestr[256]margin_column*drawcache*py_draw*py_event*py_button*py_browsercallback*py_globaldictlastspacescriptname[256]scriptarg[256]*script*but_refs*arraycachescache_displayredraws*idaspect*curfontmxmy*edittreetreetypetexfromlinkdragtitle[24]menunumtilesxnumtilesyselstateviewrectbookmarkrectscrollposscrollheightscrollarearetvalactive_bookmarkprv_wprv_h(*returnfunc)()(*returnfunc_event)()(*returnfunc_args)()*arg1*arg2*menup*pupmenu*imglen_alloccursorscrollbackhistoryprompt[256]language[32]sel_startsel_endfilter[64]*area*soundsndnrfilename[256]blf_iduifont_idr_to_lpointskerningitalicboldshadowshadxshadyshadowalphashadowcolorpaneltitlegrouplabelwidgetlabelwidgetpanelzoomminlabelcharsminwidgetcharscolumnspacetemplatespaceboxspacebuttonspacexbuttonspaceypanelspacepanelouterpad[1]outline[4]inner[4]inner_sel[4]item[4]text[4]text_sel[4]shadedshadetopshadedownalpha_checkinner_anim[4]inner_anim_sel[4]inner_key[4]inner_key_sel[4]inner_driven[4]inner_driven_sel[4]wcol_regularwcol_toolwcol_textwcol_radiowcol_optionwcol_togglewcol_numwcol_numsliderwcol_menuwcol_pulldownwcol_menu_backwcol_menu_itemwcol_boxwcol_scrollwcol_progresswcol_list_itemwcol_stateiconfile[80]back[4]title[4]text_hi[4]header[4]header_title[4]header_text[4]header_text_hi[4]button[4]button_title[4]button_text[4]button_text_hi[4]list[4]list_title[4]list_text[4]list_text_hi[4]panel[4]panel_title[4]panel_text[4]panel_text_hi[4]shade1[4]shade2[4]hilite[4]grid[4]wire[4]select[4]lamp[4]active[4]group[4]group_active[4]transform[4]vertex[4]vertex_select[4]edge[4]edge_select[4]edge_seam[4]edge_sharp[4]edge_facesel[4]edge_crease[4]face[4]face_select[4]face_dot[4]extra_edge_len[4]extra_face_angle[4]extra_face_area[4]pad3[4]normal[4]vertex_normal[4]bone_solid[4]bone_pose[4]strip[4]strip_select[4]cframe[4]nurb_uline[4]nurb_vline[4]act_spline[4]nurb_sel_uline[4]nurb_sel_vline[4]lastsel_point[4]handle_free[4]handle_auto[4]handle_vect[4]handle_align[4]handle_sel_free[4]handle_sel_auto[4]handle_sel_vect[4]handle_sel_align[4]ds_channel[4]ds_subchannel[4]console_output[4]console_input[4]console_info[4]console_error[4]console_cursor[4]vertex_sizeoutline_widthfacedot_sizebpadsyntaxl[4]syntaxn[4]syntaxb[4]syntaxv[4]syntaxc[4]movie[4]image[4]scene[4]audio[4]effect[4]plugin[4]transition[4]meta[4]editmesh_active[4]handle_vertex[4]handle_vertex_select[4]handle_vertex_sizehpad[7]preview_back[4]solid[4]tuitbutstv3dtfiletipotinfotsndtacttnlatseqtimatimaseltexttoopsttimetnodetlogictuserpreftconsoletarm[20]active_theme_areamodule[64]spec[4]dupflagsavetimetempdir[160]fontdir[160]renderdir[240]textudir[160]plugtexdir[160]plugseqdir[160]pythondir[160]sounddir[160]image_editor[240]anim_player[240]anim_player_presetv2d_min_gridsizetimecode_styleversionsdbl_click_timegameflagswheellinescrolluiflaglanguageuserprefviewzoommixbufsizeaudiodeviceaudiorateaudioformataudiochannelsdpiencodingtransoptsmenuthreshold1menuthreshold2themesuifontsuistyleskeymapsaddonskeyconfigstr[64]undostepsundomemorygp_manhattendistgp_euclideandistgp_erasergp_settingstb_leftmousetb_rightmouselight[3]tw_hotspottw_flagtw_handlesizetw_sizetextimeouttexcollectratewmdrawmethoddragthresholdmemcachelimitprefetchframesframeserverportpad_rot_angleobcenter_diarvisizervibrightrecent_filessmooth_viewtxglreslimitndof_panndof_rotatecurssizecolor_picker_typeipo_newkeyhandles_newscrcastfpsscrcastwaitwidget_unitanisotropic_filterversemaster[160]verseuser[160]glalphacliptext_renderpad9coba_weightsculpt_paint_overlay_col[3]author[80]vertbaseedgebaseareabase*newsceneredraws_flagfulltempwiniddo_drawdo_refreshdo_draw_gesturedo_draw_paintcursordo_draw_dragswapmainwinsubwinactive*animtimer*contexthandler[8]*newvvec*v1*v2*typepanelname[64]tabname[64]drawname[64]ofsxofsysizexsizeylabelofsruntime_flagcontrolsnapsortorder*paneltab*activedatalist_scrolllist_sizelist_last_lenlist_grip_sizelist_search[64]*v3*v4*fullbutspacetypeheadertypespacedatahandlersactionzoneswinrctdrawrctswinidregiontypealignmentdo_draw_overlayuiblockspanels*headerstr*regiondatasubvstr[4]subversionpadsminversionminsubversionwinpos*curscreen*curscenefileflagsglobalfrevisionfilename[240]name[80]orig_widthorig_heightbottomrightxofsyofslift[3]gamma[3]gain[3]dir[160]donestartstillendstill*stripdata*crop*transform*color_balance*instance_private_data**current_private_data*tmpstartofsendofsmachinestartdispenddispsatmulhandsizeanim_preseek*strip*scene_cameraeffect_faderspeed_fader*seq1*seq2*seq3seqbase*scene_soundlevelpanscenenrmulticam_sourcestrobe*effectdataanim_startofsanim_endofsblend_modeblend_opacity*oldbasep*parseq*seqbasepmetastack*act_seqact_imagedir[256]act_sounddir[256]over_ofsover_cfraover_flagover_borderedgeWidthforwardwipetypefMinifClampfBoostdDistdQualitybNoCompScalexIniScaleyIniScalexFinScaleyFinxInixFinyIniyFinrotInirotFininterpolationuniform_scale*frameMapglobalSpeedlastValidFramebuttypeuserjitstatotpartnormfacobfacrandfactexfacrandlifeforce[3]vectsizemaxlendefvec[3]mult[4]life[4]child[4]mat[4]texmapcurmultstaticstepomattimetexspeedtexflag2negvertgroup_vvgroupname[32]vgroupname_v[32]*keysminfacnrusedusedelem*poinresetdistlastval*makeyqualqual2targetName[32]toggleName[32]value[32]maxvalue[32]delaydurationmaterialName[32]damptimerpropname[32]matname[32]axisflagposechannel[32]constraint[32]*fromObjectsubject[32]body[32]otypepulsefreqtotlinks**linkstapjoyindexaxis_singleaxisfbuttonhathatfprecisionstr[128]*mynewinputstotslinks**slinksvalostate_mask*actframeProp[32]blendinpriorityend_resetstrideaxisstridelengthmin_gainmax_gainreference_distancemax_distancerolloff_factorcone_inner_anglecone_outer_anglecone_outer_gainpad3[2]pitchsound3Dpad6[1]*melinVelocity[3]angVelocity[3]localflagdyn_operationforceloc[3]forcerot[3]linearvelocity[3]angularvelocity[3]*referenceminmaxrotdampminloc[3]maxloc[3]minrot[3]maxrot[3]matprop[32]butstabutenddistributionint_arg_1int_arg_2float_arg_1float_arg_2toPropName[32]*toObjectbodyTypefilename[64]loadaniname[64]int_argfloat_arg*subtargetgo*newpackedfileattenuationdistance*cache*playback_handle*lamprengobjectdupli_ofs[3]*propchildbaserollhead[3]tail[3]bone_mat[3][3]arm_head[3]arm_tail[3]arm_mat[4][4]arm_rollxwidthzwidthease1ease2rad_headrad_tailbonebasechainbase*edbo*act_bone*act_edbone*sketchlayer_usedlayer_protectedghostepghostsizeghosttypepathsizeghostsfghostefpathsfpathefpathbcpathac*pointsstart_frameend_frameghost_sfghost_efghost_bcghost_acghost_typeghost_stepghost_flagpath_typepath_steppath_viewflagpath_bakeflagpath_sfpath_efpath_bcpath_acconstflagikflagselectflagagrp_index*bone*childiktree*custom*custom_txeul[3]chan_mat[4][4]pose_mat[4][4]pose_head[3]pose_tail[3]limitmin[3]limitmax[3]stiffness[3]ikstretchikrotweightiklinweightchanbase*chanhashproxy_layerstride_offset[3]cyclic_offset[3]agroupsactive_groupiksolver*ikdata*ikparamproxy_act_bone[32]numiternumstepminstepmaxstepsolverfeedbackmaxveldampmaxdampepschannelscustomColcscurvesgroupsactive_markeridroot*source*filter_grpsearchstr[64]filterflagadstimeslide*grpname[30]ownspacetarspaceenforceheadtaillin_errorrot_error*tarmatrix[4][4]spacerotOrdertarnumtargetsiterationsrootbonemax_rootbone*poletarpolesubtarget[32]poleangleorientweightgrabtarget[3]numpointschainlenxzScaleModereserved1reserved2minmaxflagstuckcache[3]lockflagfollowflagvolmodeplaneorglengthbulgepivXpivYpivZaxXaxYaxZminLimit[6]maxLimit[6]extraFzinvmat[4][4]fromtomap[3]expofrom_min[3]from_max[3]to_min[3]to_max[3]rotAxiszminzmaxpad[9]channel[32]no_rot_axisstride_axiscurmodactstartactendactoffsstridelenscaleblendoutstridechannel[32]offs_bone[32]hasinputhasoutputdatatypesockettype*new_socknslimitstack_type*stack_ptrstack_indexlocxlocyown_index*groupsockto_index*link*rectxsizeysize*new_nodelastyoutputs*storageminiwidthlabel[32]custom1custom2custom3custom4need_execexec*threaddatatotrbutrprvr*block*typeinfo*fromnode*tonode*fromsock*tosocknodeslinks*stack*threadstackinitstacksizecur_indexalltypes(*progress)()(*stats_draw)()(*test_break)()*tbh*prh*sdhcyclicmoviesamplesmaxspeedminspeedcurvedpercentxpercentybokehgammaimage_in_widthimage_in_heightcenter_xcenter_yspinwrapsigma_colorsigma_spacehuet1t2t3fstrengthfalphakey[4]algorithmchannelx1x2y1y2fac_x1fac_x2fac_y1fac_y2colname[32]bktyperotationgamcono_zbuffstopmaxblurbthresh*dict*nodeangle_ofscolmodmixthresholdfademcjitprojfitslope[3]power[3]lift_lgg[3]gamma_inv[3]limchanunspilllimscaleuspillruspillguspillbshortymintablemaxtableext_in[2]ext_out[2]*curve*table*premultablepresetchanged_timestampcurrcliprcm[4]black[3]white[3]bwmul[3]sample[3]x_resolutiondata_r[256]data_g[256]data_b[256]data_luma[256]sample_fullsample_linesaccuracywavefrm_modewavefrm_alphawavefrm_yfacwavefrm_heightvecscope_alphavecscope_heightminmax[3][2]hist*waveform_1*waveform_2*waveform_3*vecscopewaveform_totoffset[2]clonemtex*icon_imbuficon_filepath[240]normal_weightob_modejittersmooth_stroke_radiussmooth_stroke_factorratergb[3]sculpt_planeplane_offsetsculpt_toolvertexpaint_toolimagepaint_toolpad3[5]autosmooth_factorcrease_pinch_factorplane_trimtexture_sample_biastexture_overlay_alphaunprojected_radiusadd_col[3]sub_col[3]active_rndactive_cloneactive_mask*layerstotlayermaxlayertotsize*pool*externalrot[4]ave[3]*groundwander[3]rest_lengthparticle_index[2]delete_flagnumparentpa[4]w[4]fuv[4]foffsetprev_state*hair*boiddietimenum_dmcachehair_indexalivespring_kplasticity_constantyield_ratioplasticity_balanceyield_balanceviscosity_omegaviscosity_betastiffness_kstiffness_knearrest_densitybuoyancyspring_frames*boids*fluiddistrphystypeavemodereacteventdrawdraw_asdraw_sizechildtyperen_assubframesdraw_colren_stephair_stepkeys_stepadapt_angleadapt_pixrotfromintegratorbb_alignbb_uv_splitbb_animbb_split_offsetbb_tiltbb_rand_tiltbb_offset[2]bb_size[2]bb_vel_headbb_vel_tailcolor_vec_maxsimplify_refsizesimplify_ratesimplify_transitionsimplify_viewporttimetweakjitfaceff_hairgrid_randgrid_reseffector_amountpartfactanfactanphasereactfacob_vel[3]avefacphasefacrandrotfacrandphasefacrandsizeacc[3]dragfacbrownfacrandlengthchild_nbrren_child_nbrparentschildsizechildrandsizechildradchildflatclumppowkink_flatkink_amp_clumprough1rough1_sizerough2rough2_sizerough2_thresrough_endrough_end_shapeclengthclength_thresparting_facparting_minparting_maxbranch_thresdraw_line[2]path_startpath_endtrail_countkeyed_loopsdupliweights*eff_group*dup_ob*bb_ob*pd2*part*particles**pathcache**childcachepathcachebufschildcachebufs*clmd*hair_in_dm*hair_out_dm*target_ob*latticetree_framebvhtree_framechild_seedtotunexisttotchildtotcachedtotchildcachetarget_psystotkeyedbakespacebb_uvname[3][32]vgroup[12]vg_negrt3*renderdata*effectors*fluid_springstot_fluidspringsalloc_fluidsprings*tree*pdd*frandCdisCvistructuralbendingmax_bendmax_structmax_shearavg_spring_lentimescaleeff_force_scaleeff_wind_scalesim_time_oldvelocity_smoothcollider_frictionstepsPerFrameprerollmaxspringlensolver_typevgroup_bendvgroup_massvgroup_structshapekey_restpresetsreset*collision_listepsilonself_frictionselfepsilonrepel_forcedistance_repelself_loop_countloop_countpressurethicknessstrokesframenum*actframegstepinfo[128]sbuffer_sizesbuffer_sflag*sbufferlistprintlevelstorelevel*reporttimer*windrawable*winactivewindowsinitializedfile_savedop_undo_depthoperatorsqueuereportsjobspaintcursorsdragskeyconfigs*defaultconftimers*autosavetimer*ghostwingrabcursor*screen*newscreenscreenname[32]posxposywindowstatemonitorlastcursormodalcursoraddmousemove*eventstate*curswin*tweakdrawmethoddrawfail*drawdatamodalhandlerssubwindowsgestureidname[64]propvalueshiftctrlaltoskeykeymodifiermaptype*ptritemsspaceidregionidkmi_id(*poll)()*modal_itemsbasename[64]actkeymap*customdata*py_instance*reportsmacro*opm*edatainfluence*coefficientsarraysizepoly_orderamplitudephase_multiplierphase_offsetvalue_offsetmidvalbefore_modeafter_modebefore_cyclesafter_cyclesrectphasemodificationstep_size*rna_pathpchan_name[32]transChanidtypetargets[8]num_targetsvariablesexpression[256]*expr_compvec[2]*fptarray_indexcolor_modecolor[3]from[128]to[128]mappingsstrips*remapfcurvesstrip_timeblendmodeextendmodegroup[64]groupmodekeyingflagpathstypeinfo[64]active_path*tmpactnla_tracks*actstripdriversoverridesact_blendmodeact_extendmodeact_influenceruleoptionsfear_factorsignal_idlook_aheadoloc[3]queue_sizewanderflee_distancehealthstate_idrulesconditionsactionsruleset_typerule_fuzzinesslast_state_idlanding_smoothnessbankingaggressionair_min_speedair_max_speedair_max_accair_max_aveair_personal_spaceland_jump_speedland_max_speedland_max_accland_max_aveland_personal_spaceland_stick_forcestates*smd*fluid_group*coll_group*wt*tex_wt*tex_shadow*shadowp0[3]p1[3]dxomegatempAmbbetares[3]amplifymaxresviewsettingsnoisediss_percentdiss_speedres_wt[3]dx_wtv3dnumcache_compcache_high_comp*point_cache[2]ptcaches[2]border_collisionstime_scalevorticityvelocity[2]vel_multivgrp_heat_scale[2]vgroup_flowvgroup_densityvgroup_heat*points_old*velmat_old[4][4]TYPEcharucharshortushortintlongulongfloatdoublevoidLinkLinkDataListBasevec2svec2frctirctfIDPropertyDataIDPropertyIDLibraryFileDataPreviewImageIpoDriverObjectIpoCurveBPointBezTripleIpoKeyBlockKeyAnimDataTextLineTextMarkerTextPackedFileCameraImageUserSceneImageGPUTextureanimRenderResultMTexTexPluginTexCBDataColorBandEnvMapImBufPointDensityCurveMappingVoxelDatabNodeTreeTexMappingLampVolumeSettingsMaterialGroupVFontVFontDataMetaElemBoundBoxMetaBallNurbCharInfoTextBoxEditNurbGHashCurvePathSelBoxEditFontMeshMFaceMTFaceTFaceMVertMEdgeMDeformVertMColMStickyMSelectEditMeshCustomDataMultiresPartialVisibilityMDeformWeightMTexPolyMLoopUVMLoopColMFloatPropertyMIntPropertyMStringPropertyOrigSpaceFaceMDispsMultiresColMultiresColFaceMultiresFaceMultiresEdgeMultiresLevelModifierDataMappingInfoModifierDataSubsurfModifierDataLatticeModifierDataCurveModifierDataBuildModifierDataMaskModifierDataArrayModifierDataMirrorModifierDataEdgeSplitModifierDataBevelModifierDataBMeshModifierDataSmokeModifierDataSmokeDomainSettingsSmokeFlowSettingsSmokeCollSettingsDisplaceModifierDataUVProjectModifierDataDecimateModifierDataSmoothModifierDataCastModifierDataWaveModifierDataArmatureModifierDataHookModifierDataSoftbodyModifierDataClothModifierDataClothClothSimSettingsClothCollSettingsPointCacheCollisionModifierDataBVHTreeSurfaceModifierDataDerivedMeshBVHTreeFromMeshBooleanModifierDataMDefInfluenceMDefCellMeshDeformModifierDataParticleSystemModifierDataParticleSystemParticleInstanceModifierDataExplodeModifierDataMultiresModifierDataFluidsimModifierDataFluidsimSettingsShrinkwrapModifierDataSimpleDeformModifierDataShapeKeyModifierDataSolidifyModifierDataScrewModifierDataWarpModifierDataEditLattLatticebDeformGroupSculptSessionbActionbPosebGPdatabAnimVizSettingsbMotionPathBulletSoftBodyPartDeflectSoftBodyObHookDupliObjectRNGEffectorWeightsPTCacheExtraPTCacheMemPTCacheEditSBVertexBodyPointBodySpringSBScratchFluidVertexVelocityWorldBaseAviCodecDataQuicktimeCodecDataQuicktimeCodecSettingsFFMpegCodecDataAudioDataSceneRenderLayerRenderDataRenderProfileGameDomeGameFramingGameDataTimeMarkerPaintBrushImagePaintSettingsParticleBrushDataParticleEditSettingsTransformOrientationSculptVPaintToolSettingsbStatsUnitSettingsPhysicsSettingsEditingSceneStatsDagForestBGpicRegionView3DRenderInfoViewDepthsSmoothViewStorewmTimerView3DSpaceLinkView2DSpaceInfoSpaceIpobDopeSheetSpaceButsSpaceSeqFileSelectParamsSpaceFileFileListwmOperatorFileLayoutSpaceOopsTreeStoreTreeStoreElemSpaceImageScopesHistogramSpaceNlaSpaceTextScriptSpaceScriptSpaceTimeCacheSpaceTimeSpaceNodeSpaceLogicSpaceImaSelConsoleLineSpaceConsoleSpaceUserPrefSpaceSoundScrAreabSounduiFontuiFontStyleuiStyleuiWidgetColorsuiWidgetStateColorsThemeUIThemeSpaceThemeWireColorbThemebAddonSolidLightUserDefbScreenScrVertScrEdgePanelPanelTypeuiLayoutSpaceTypeARegionARegionTypeFileGlobalStripElemStripCropStripTransformStripColorBalanceStripProxyStripPluginSeqSequenceMetaStackWipeVarsGlowVarsTransformVarsSolidColorVarsSpeedControlVarsEffectBuildEffPartEffParticleWaveEffbPropertybNearSensorbMouseSensorbTouchSensorbKeyboardSensorbPropertySensorbActuatorSensorbDelaySensorbCollisionSensorbRadarSensorbRandomSensorbRaySensorbArmatureSensorbMessageSensorbSensorbControllerbJoystickSensorbExpressionContbPythonContbActuatorbAddObjectActuatorbActionActuatorSound3DbSoundActuatorbEditObjectActuatorbSceneActuatorbPropertyActuatorbObjectActuatorbIpoActuatorbCameraActuatorbConstraintActuatorbGroupActuatorbRandomActuatorbMessageActuatorbGameActuatorbVisibilityActuatorbTwoDFilterActuatorbParentActuatorbStateActuatorbArmatureActuatorGroupObjectBonebArmaturebMotionPathVertbPoseChannelbIKParambItascbActionGroupSpaceActionbActionChannelbConstraintChannelbConstraintbConstraintTargetbPythonConstraintbKinematicConstraintbSplineIKConstraintbTrackToConstraintbRotateLikeConstraintbLocateLikeConstraintbSizeLikeConstraintbSameVolumeConstraintbTransLikeConstraintbMinMaxConstraintbActionConstraintbLockTrackConstraintbDampTrackConstraintbFollowPathConstraintbStretchToConstraintbRigidBodyJointConstraintbClampToConstraintbChildOfConstraintbTransformConstraintbPivotConstraintbLocLimitConstraintbRotLimitConstraintbSizeLimitConstraintbDistLimitConstraintbShrinkwrapConstraintbActionModifierbActionStripbNodeStackbNodeSocketbNodeLinkbNodePreviewbNodeuiBlockbNodeTypeNodeImageAnimNodeBlurDataNodeDBlurDataNodeBilateralBlurDataNodeHueSatNodeImageFileNodeChromaNodeTwoXYsNodeTwoFloatsNodeGeometryNodeVertexColNodeDefocusNodeScriptDictNodeGlareNodeTonemapNodeLensDistNodeColorBalanceNodeColorspillTexNodeOutputCurveMapPointCurveMapBrushCloneCustomDataLayerCustomDataExternalHairKeyParticleKeyBoidParticleBoidDataParticleSpringChildParticleParticleTargetParticleDupliWeightParticleDataSPHFluidSettingsParticleSettingsBoidSettingsParticleCacheKeyKDTreeParticleDrawDataLinkNodebGPDspointbGPDstrokebGPDframebGPDlayerReportListwmWindowManagerwmWindowwmKeyConfigwmEventwmSubWindowwmGesturewmKeyMapItemPointerRNAwmKeyMapwmOperatorTypeFModifierFMod_GeneratorFMod_FunctionGeneratorFCM_EnvelopeDataFMod_EnvelopeFMod_CyclesFMod_PythonFMod_LimitsFMod_NoiseFMod_SteppedDriverTargetDriverVarChannelDriverFPointFCurveAnimMapPairAnimMapperNlaStripNlaTrackKS_PathKeyingSetAnimOverrideIdAdtTemplateBoidRuleBoidRuleGoalAvoidBoidRuleAvoidCollisionBoidRuleFollowLeaderBoidRuleAverageSpeedBoidRuleFightBoidStateFLUID_3DWTURBULENCETLEN `HH( p$8p`(0(pxh@(X hXhP 0@ (0 @ @Phx``XXp8XxP0x`0phX`Pp0h0xxH  (@@X@h`0X`8 PX`88@h`h(!x@0H(h pxXP8 (X( X,  4 H@@00Hh(H,(lHH`h<PP` HXPpT `88pX(((x@X8XPx8000(HH008hp`88H(8( ,@  ` 8H88@( <h ((xxh8(h(hp P8P@hH@STRC                  !"#$%&'()*+,-./01+,23456  789:; <=+>?#@:,ABC DEFG HIJK: LMNOP  QRS! !!TUVW XYZ"[X\ ] ^ _`a bcde fg#hi $HjklmnopqrsMt%&uvwxyz{|#}~C'  ()**|#+A,6-   #.@=/"=.0'1lm|2  / 3 4   |,?HC !"#$%&'()*+,-./0123456789zwxy:;W%<5=M'->/ 0?2@4AB6CDEFG*7HHHIJKLMNOPQRST3UClmVWXYZ[\]^_`abcdefghijWklmnopqrstuvwxyz{|M+}~89}H8HkB~//+}5=M:C ;<#===>     ?H>   M9#CD= 4 !"#$%!$#@@@&$'()*+,-./0./123A4&#CB56C 7D89ZEDH> : C;<=>MF?@9 ACDWBCDEF#GHIJ)*KLM N]@OPQRSTUVWXYZG[H\];^;_;`;abcdeBfghAiAjI'H>M@9JkKlLmMnNoOpPqQrIsRtSuTvTwTx3yz{|CDB}~UVL HJ&NWOWMPX'HYZ#QRK'H[\]^_Z`a`b&cd ddbac3zy#MU MTvTxVJNzy3#e eeH#&ufe,geX  heiejeUkeEHl eXmeneXo e#Xpe#qerstu e,v e'X#wexeyehze,#HW{eC| e}e~e&u  eMMMMM M J   eMM e#xeH#3 !"#$% &e'()*6e*6+,e-./e0123Xe4 e56789:;< e=7>?H@#e exABCDEF# eGHIJKLe,MN3UOP9ZH'(QRSTCUVW#XYZ[\]^M@OpE_`a>b#Hcdefgh$ijklMF?>mno pqr s t  u vHw9xyCz{|D} ~cj        @:9}   $E *E(,:     6   %   !"#$%&'6()*#+,-./0123456789:;<=y>?@ABCODEFGHIJKLMNOPQRS TUVWXY2Z[\]^_`abcdefghijklmInIopqrMstuvwxyz{|}~3#LHIkCHM+}~  #  CWX# 9:#iy>     ^hH !"#$%&'()* +,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYC"Z[ \]^W_CHL`aC"bcWCHde  fghiCjWkl mnXo#pqrW shtuvwx sy6z{|}&u~oX#o#"O sRczW3z6&,Hk& B5= b      ep '%<WXhC&     O>p !"#$%&2 '()*OW+k, -./0123n456789:;<=> ? @ ABCDE Fp"=GHIJKLMNOPQRSTUVW3XYZ '()* '()*[ '()*\] ^H_`3 '()*\abcdSef# ?ghi '()*\WXajklm#pnopqrstuvwxyz '({|} ~ C '()*\  '('%<3pWXm3  '()*_#]\ '()*"X       X  '()XW   '()\ # '()*\N WXm&5=5 p  '()*#p* '()*\}opw t#W     1Q '()*#   '(# '()\HWXC# S      # !"#$%&'a() *+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~@B###%Y     /    '&u&W#    )#   #    !1("TU##  $ ' % &   \'(TU)*+S,   - . %/ 0 1234567&89:;#< =>? @ABCDEF#Gp)h#6HIJ KGj LMN    O P 0 Q URSIJTUVW#XYyZ[M&u\)]^>_`a b cdefgh ijklm no p b qrstuvw#xyLz{|}~ c#X66y-8VO;#:HB  O#!WC"9O##$#%#&#'HC(L)*HW+,---WC .*td#/ 01"H....C 2- 3#*4 V56 WC5#7 *I8W#&uk9#*: z}; VWC#<*WC= H# > V=  ?     @   WCAV BCZ  "D*EIF5 2 222  * # # M  X#   GGG*  :  ~ HHH H$        ! " O# $ % & ' ( ~IH ) * + H, - . 0g/ ~0 1 2 3 4 5 6 7 8 9 : JJ; < = > ? @ A B C D E F G H I J K L K)KK M N O P F7 8 HQ K$KR S rT KU CV  #W X Y Z [ \ ] ^ _ ` ? a Db #c Wcd e f g h i j qk Lh M h l m n o p q r s t NNN u v w  x a y bz { #| a :} ~  O  '()*\m H_ PPPN M sQQQM RRR    #M  S SS    T"   U        HOV ;    W   X#X  Y  Z  [\ ]   x WC ^  @UV#_  ` #a xA b     c R          #WCd e # f        g  h    i    j    k OXH#l5O9; m mm u  *nnnH  MUV      vo%     pppp o   o  W   p  Cq r   #s"sss Hd       H          rt u qqqs s p p #5Hp o    #  >  vwy #w   A   ^    x    L mJ #y  J#z W {y>|    S     }       ! ~"  # $ e%  & ' ( )   * +  JL, h- . / 0 x 1 2 3 4 5 #6 7 DEF8 9 : ; < = > ? @  A B C D E F G 3 =H I J K L M N O P u Q R S T U  H|V W X Y Z [ \ ] ^ _ ` a b c d e #'f #"g 3E +h 1i j k l hm Pn o p q r s t u v w x y z { | } ~   x   Z <T    #  #Y    6         6*H*6   O     h               |H  T6  k          |                  J    V               h                                 +}: :   M@ 2  R      ~    $                S        ! % 5" # $ R% & ' ( ) * 6+ , - 734. / 0 X1 2 3 4 5 6 7 8 9 T : ; < = > ? X@ A :B ; C  D E   wF C G YH  +I J K  L M N #O P Q R S T U V W X Y Z [ \ ] ^ _   ` a #b c d e f g h i j k Cl m n o p q W % r s t u v  w x y z { | #}   ~ u     u  u   }        H    !"3     "  #h #  x< =      : :  #N ; v/ 3:    5   v  UV      WC     #          m      H *   u     *C      d6      H    u       X            r(q  : : :  (( (           X#         T   Cs q '      Xt q ;   E   #CENDB