--- a
+++ b/Application/Examples/JumpingJack/JumpingJack.main.any
@@ -0,0 +1,390 @@
+#include "../libdef.any"
+
+/** This is a stand-alone instructional model of a jumping driven by
+a pull string. The model shows how to create segments, joints and drivers
+and how AnyScript as s declarative language frees allows the user to
+simply declare the presence of objects whereafter the system sorts out
+the connections and computes the dynamics. */
+Main = {
+  
+  // The actual body model goes in this folder
+  AnyFolder MyModel = {
+    
+    /// The Global Reference Frame, i.e. ground.
+    AnyFixedRefFrame GlobalRef = {
+      AnyRefNode HandleBase={
+        sRel={0,-0.4,0};
+      };
+    };  // Global reference frame
+    
+    #include "Model/DrawSettings.any"    
+    
+    AnySeg Body = {
+      Mass=0.00013025*750;
+      Jii={6.038*10^-7,6.14*10^-8,6.61*10^-7}*750;
+      sCoM={0,-0.0768,0};
+      
+      AnyDrawSTL drw1={
+        FileName ="Input/BodyBase.stl";
+        RGB=..DrawSettings.Colors.AnyBodyGreen;
+        Opacity=1;
+        AnyStyleDrawMaterial1 style = 
+        {
+          EnableCreasing = On;
+          CreasingAngle = 0.524;
+          SpecularRGB = 0.05*{1,1,1};
+        };
+      };
+      
+      AnyDrawSTL drw2={
+        FileName ="Input/BodyDecor.stl";
+        RGB=..DrawSettings.Colors.AnyBodyRed;
+        Opacity=1;
+        AnyStyleDrawMaterial1 style = 
+        {
+          EnableCreasing = On;
+          CreasingAngle = 0.524;
+          SpecularRGB = 0.05*{1,1,1};
+        };
+      };
+      
+      AnyRefNode NailHole ={
+        sRel={0,0,0};
+      };
+      
+      AnyRefNode RightArmJntNode={
+        sRel={-0.043,-0.082,0};
+      };
+      
+      AnyRefNode LeftArmJntNode={
+        sRel={0.043,-0.082,0};
+      };
+      
+      AnyRefNode RightLegJntNode={
+        sRel={-0.037,-0.207,0};
+      };
+      
+      AnyRefNode LeftLegJntNode={
+        sRel={0.037,-0.207,0};
+      };  
+      
+      AnyRefNode StringNodeTop={
+        sRel={-0.0,-0.12,0};
+      };
+      
+      AnyRefNode StringNodeBottom={
+        sRel={-0.0,-0.217,0};
+      };      
+      
+      AnyRefNode LogoLocation={
+        sRel={-0.0,-0.12,0.0045};
+      };
+    };
+    
+    AnySeg RightArm = {
+      Jii={7.7863*10^-10,2.1221*10^-8,2.196*10^-8}*750;
+      Mass=1.403*10^-5*750; // The mass should always be defined
+      r0 ={-0.097000, -0.083000, 0.000000};
+      
+      AnyDrawSTL drw={
+        FileName ="Input/arm.stl";
+        RGB=..DrawSettings.Colors.AnyBodyBlue;
+        Opacity=1;
+        AnyStyleDrawMaterial1 style = 
+        {
+          EnableCreasing = On;
+          CreasingAngle = 0.524;
+          SpecularRGB = 0.05*{1,1,1};
+        };
+      };
+      
+      AnyRefNode JntNode={        sRel={0.054,0.001,0};      };
+      AnyRefNode StringNode={        sRel={0.065,0.001,0};      };  
+    };
+    
+    
+    AnySeg LeftArm = {
+      Jii={7.7863*10^-10,2.1221*10^-8,2.196*10^-8}*750;
+      //Jij={-4.492*10^-11,0,0}*750;
+      Mass=1.403*10^-5*750;
+      Axes0 = {{-1.000000, -0.000000, 0.000000}, {0.000000, -1.000000, 0.000000}, {0.000000, 0.000000, 1.000000}};
+      r0 ={0.097000, -0.083000, 0.000000};
+      
+      AnyDrawSTL drw={
+        FileName ="Input/arm.stl";
+        RGB=..DrawSettings.Colors.AnyBodyBlue;
+        ScaleXYZ={1,-1,1};
+        Opacity= 1;
+        AnyStyleDrawMaterial1 style = 
+        {
+          EnableCreasing = On;
+          CreasingAngle = 0.524;
+          SpecularRGB = 0.05*{1,1,1};
+        };
+      };
+      
+      AnyRefNode JntNode={
+        sRel={0.054,-0.001,0};
+      };
+      
+      AnyRefNode StringNode={
+        sRel={0.065,-0.001,0};
+      };
+    };
+    
+    AnySeg RightLeg = {
+      Mass=2.5*10^-5*750;  //volume(from CAD program) * density (guestimate for wood)
+      Jii={7.64*10^-8,4.605*10^-9,8.0946*10^-8}*750;
+      //Jij={-1.02*10^-9,0,0}*750;
+      r0 ={-0.046000, -0.283000, 0.000000};
+      
+      AnyDrawSTL drw={
+        FileName ="Input/leg.stl";
+        RGB=..DrawSettings.Colors.AnyBodyBlue;
+        Opacity= 1;
+        AnyStyleDrawMaterial1 style = 
+        {
+          EnableCreasing = On;
+          CreasingAngle = 0.524;
+          SpecularRGB = 0.05*{1,1,1};
+        };
+      };
+      
+      AnyRefNode StringNode={
+        sRel={0.013,0.089,0};
+      };
+      
+      AnyRefNode JntNode={
+        sRel={0.009,0.076,0};
+      };      
+    };
+    
+    AnySeg LeftLeg = {
+      Mass=2.5*10^-5*750;  //volume(from CAD program) * density (guestimate for wood)
+      Jii={7.64*10^-8,4.605*10^-9,8.0946*10^-8}*750;
+      //Jij={-1.02*10^-9,0,0}*750;
+      r0 ={0.046000, -0.283000, 0.000000};
+      AnyDrawSTL drw={
+        FileName ="Input/leg.stl";
+        RGB=..DrawSettings.Colors.AnyBodyBlue;
+        ScaleXYZ={-1,1,1};
+        Opacity= 1;
+        AnyStyleDrawMaterial1 style = 
+        {
+          EnableCreasing = On;
+          CreasingAngle = 0.524;
+          SpecularRGB = 0.05*{1,1,1};
+        };
+      };
+      
+      AnyRefNode StringNode={
+        sRel={-0.013,0.089,0};
+      };
+      
+      AnyRefNode JntNode={
+        sRel={-0.009,0.076,0};
+      };
+    };
+    
+    AnyFixedRefFrame  Handle ={
+      //      Mass=9.869*10^-6*750;
+      //      Jii={2.13*10^-9,2.13*10^-9,4.147*10^-9}*750;
+      Origin={0.000000, -0.399000, 0.000000};
+      AnyDrawSurf drw={
+        FileName ="Input/handle";
+        RGB=..DrawSettings.Colors.AnyBodyGreen;
+      };
+    };
+    
+        AnySeg Logo={
+          Mass=0;
+          Jii={0,0,0};
+          r0 = {0, -0.12, 0.0045};
+          Axes0 = {{1, 0, 0}, {0, 1, 0}, {0, 0, 1}};
+          AnyDrawSTL Body = {
+            FileName = ANYBODY_PATH_MODELUTILS + "/DrawObjects/Body-grey.stl";
+            RGB = ..DrawSettings.Colors.AnyBodyRed;
+            
+            ScaleXYZ={0.002,0.002,0.002};
+            Opacity= 1;
+          };
+          
+          AnyDrawSTL AnyTechnology = {
+            FileName = ANYBODY_PATH_MODELUTILS + "/DrawObjects/AnyTechnology-red.stl";
+            RGB = ..DrawSettings.Colors.AnyBodyGrey;
+            
+            ScaleXYZ={0.002,0.002,0.002};
+            Opacity= 1;
+          };
+        };
+    
+        AnySphericalJoint LogoJnt={
+          AnyRefNode &ref1=.Body.LogoLocation;
+          AnySeg &ref2=.Logo;
+        };
+        
+        AnyKinEqSimpleDriver LogoJntDrv={
+          AnySphericalJoint &ref1=.LogoJnt;
+          DriverPos={0,0,0};
+          DriverVel={0,0.0,0};
+        };
+        
+    AnyKinEq NailBodyJnt={
+      AnyKinLinear lin ={
+        AnyRefFrame &ref1=..GlobalRef;
+        AnyRefFrame &ref2=..Body.NailHole;
+      };
+      
+      AnyKinRotational rot ={
+        AnyRefFrame &ref1=..GlobalRef;
+        AnyRefFrame &ref2=..Body.NailHole;
+        Type=RotAxesAngles;
+      };
+    };
+    AnyFunConst WeightFun ={Value = {0.001};};
+    
+    AnyRevoluteJoint RightArmJnt={
+      AnyRefFrame &ref1=.Body.RightArmJntNode;
+      AnyRefFrame &ref2=.RightArm.JntNode;
+    };
+    AnyKinEqSimpleDriver RightArmDrv ={
+      AnyRevoluteJoint &ref=.RightArmJnt;
+      DriverPos={0.6};
+      DriverVel={0.0};
+      CType={Soft};
+      Reaction.Type={Off};
+      WeightFun={&.WeightFun };
+      
+    };
+    
+    
+    
+    AnyRevoluteJoint LeftArmJnt={
+      AnyRefFrame &ref1=.Body.LeftArmJntNode;
+      AnyRefFrame &ref2=.LeftArm.JntNode;
+    }; 
+    AnyKinEqSimpleDriver LeftArmDrv ={
+      AnyRevoluteJoint &ref=.LeftArmJnt;
+      DriverPos={2.544869};
+      DriverVel={0};
+      CType={Soft};
+      Reaction.Type={Off};
+      WeightFun={&.WeightFun };
+      
+    };
+    
+    
+    AnyRevoluteJoint RightLegJnt={
+      AnyRefFrame &ref1=.Body.RightLegJntNode;
+      AnyRefFrame &ref2=.RightLeg.JntNode;
+    }; 
+    
+    AnyRevoluteJoint LeftLegJnt={
+      AnyRefFrame &ref1=.Body.LeftLegJntNode;
+      AnyRefFrame &ref2=.LeftLeg.JntNode;
+    }; 
+    
+    AnyKinEqSimpleDriver RightLegJntDrv={
+      AnyRevoluteJoint &ref=.RightLegJnt;
+      DriverPos={0.09828748};
+      DriverVel={0};
+      CType={Soft};
+      Reaction.Type={Off};
+      WeightFun={&.WeightFun };
+      
+    };
+    
+    AnyKinEqSimpleDriver LeftLegJntDrv={
+      AnyRevoluteJoint &ref=.LeftLegJnt;
+      DriverPos={-0.09828748};
+      DriverVel={0};
+      CType={Soft};
+      Reaction.Type={Off};
+      WeightFun={&.WeightFun };
+      
+    };
+    
+    
+    
+    
+    
+    
+    
+    AnyKinPLine RightArmString ={
+      AnyRefNode &ref1=.RightArm.StringNode;
+      AnyRefNode &ref2=.Body.StringNodeTop;
+      AnyRefFrame &ref3=.Handle;   
+      AnyDrawPLine drw={Thickness=0.0015; RGB={1,0,0};};
+    };
+    
+    AnyKinPLine LeftArmString ={
+      AnyRefNode &ref1=.LeftArm.StringNode;
+      AnyRefNode &ref2=.Body.StringNodeTop;
+      AnyRefFrame &ref3=.Handle;   
+      AnyDrawPLine drw={Thickness=0.0015; RGB={1,0,0};};
+    };    
+    
+    AnyKinPLine RightLegString ={
+      AnyRefNode &ref1=.RightLeg.StringNode;
+      AnyRefNode &ref2=.Body.StringNodeBottom;
+      AnyRefFrame &ref3=.Handle;   
+      AnyDrawPLine drw={Thickness=0.0015; RGB={1,0,0};};
+    };
+    
+    AnyKinPLine LeftLegString ={
+      AnyRefNode &ref1=.LeftLeg.StringNode;
+      AnyRefNode &ref2=.Body.StringNodeBottom;
+      AnyRefFrame &ref3=.Handle;   
+      AnyDrawPLine drw={Thickness=0.0015; RGB={1,0,0};};
+    }; 
+    
+    AnyKinEqSimpleDriver ArmStringsDrv={
+      AnyKinPLine &ref1=.RightArmString;
+      AnyKinPLine &ref2=.LeftArmString;
+      DriverPos={1,1}*0.334689;
+      DriverVel={0.00,0.00}; 
+      
+      CType = {Soft,Soft};
+      
+    };
+    
+    AnyKinEqSimpleDriver LegStringsDrv={
+      AnyKinPLine &ref1=.RightLegString;  
+      AnyKinPLine &ref2=.LeftLegString;
+      DriverPos={1,1}*0.223478;
+      DriverVel={0.0,0.0}; 
+      CType = {Soft,Soft};
+      
+    };
+    
+    
+    AnyDrawWidgetLin handle =         {
+      Operation = &Main.Study.Kinematics;
+      UpdateEvent = OnMouseRelease;
+      MaxDrawSize = 0.1;
+      MinDrawSize = 0.1;
+      RefFrame = &Main.MyModel.GlobalRef;
+      Target = &.Main.MyModel.Handle.Origin ;
+      AxisOnOff = {Off, On, Off};
+    };
+    
+  }; // MyModel
+  
+  // The study: Operations to be performed on the model
+  AnyBodyStudy Study = {
+    AnyFolder &Model = .MyModel;
+    
+    InitialConditions.SolverType = KinSolOverDeterminate;
+    Kinematics.SolverType = KinSolOverDeterminate;
+    
+    
+    Gravity = {0.0, -9.81, 0.0};
+    tEnd=10;
+    nStep=1;
+  };
+  
+  // Include an operation sequence to run all required steps of your application (see Operations tab)
+  #include "Model\RunAppSequence.any"  
+  
+};  // Main
+