<?xml version="1.0" encoding="UTF-8"?>
<!-- This XML file has been created by Easy JavaScript Simulations (EjsS). Visit http://www.um.es/fem/Ejs. -->
<!-- Please, save the file to your hard disk on your Ejs' user directory and open it with Ejs. -->
<Osejs version="6.1 BETA">
<Osejs.Information>
<Title><![CDATA[Clock Teaching Model]]></Title>
<Copyright><![CDATA[CC-BY-NC-SA]]></Copyright>
<Keywords><![CDATA[]]></Keywords>
<Level><![CDATA[]]></Level>
<Language><![CDATA[]]></Language>
<Abstract><![CDATA[
]]></Abstract>
<FixedNavigationBar>false</FixedNavigationBar>
<RunAlways>true</RunAlways>
<UseInterpreter>true</UseInterpreter>
<UseDeltaForODE>false</UseDeltaForODE>
<ModelTab></ModelTab>
<ModelTabTitle><![CDATA[]]></ModelTabTitle>
<ModelName><![CDATA[]]></ModelName>
<CSSFile></CSSFile>
<StaticImages>
</StaticImages>
<HTMLHead><![CDATA[<script async="true" src="https://www.googletagmanager.com/gtag/js?id=UA-3326007-19"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());
  gtag('config', 'UA-3326007-19');
</script>
<script data-ad-client="ca-pub-0121577198857509" async="true" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>]]></HTMLHead>
<Logo>./Clock/Screen Shot 2017-02-06 at 12.40.23 PM (2).png</Logo>
<Author><![CDATA[weelookang@gmail.com; Fu-Kwun Hwang; Felix J. Garcia-Clemente; Francisco (Paco) Esquembre]]></Author>
<AuthorLogo>./1authorlookangphoto5050.png;./01authorfu-kwun.hwang.png;./01authorFelix_J_Garcia_Clemente.png;./01authorPacoEsquembre2011.png</AuthorLogo>
<DetectedFiles><![CDATA[./01authorFelix_J_Garcia_Clemente.png;./01authorPacoEsquembre2011.png;./01authorfu-kwun.hwang.png;./1authorlookangphoto5050.png;./Clock/320px-Breakfast!.jpg;./Clock/320px-Morning_Sun_Rays_(5077976668).jpg;./Clock/320px-Woman_brushing_teeth.jpg;./Clock/Lmspic.png;./Clock/Screen Shot 2017-02-06 at 12.40.23 PM (2).png;./Clock/clockgeogebrawee_Intro_1.html;]]></DetectedFiles>
<AuxiliaryFiles><![CDATA[./Clock/;./Clock/digital-7/;./assessment.json;]]></AuxiliaryFiles>
</Osejs.Information>
<Osejs.Description>
<Osejs.Description.Page>
<Type>DESCRIPTION_EDITOR</Type>
<Name>Intro Page</Name>
<Active>true</Active>
<Internal>true</Internal>
<Content>
<OneHTMLPage>
  <Locale>_default_</Locale>
  <Title>Intro Page</Title>
  <External>true</External>
  <![CDATA[
./Clock/clockgeogebrawee_Intro_1.html
]]>
</OneHTMLPage>
</Content>
</Osejs.Description.Page>
</Osejs.Description>
<Osejs.Model>
<Osejs.Model.FramesPerSecond>1</Osejs.Model.FramesPerSecond>
<Osejs.Model.StepsPerDisplay>1</Osejs.Model.StepsPerDisplay>
<Osejs.Model.Autostart>true</Osejs.Model.Autostart>
<Osejs.Model.Variables>
<Osejs.Model.Variables.Page>
<Type>VARIABLE_EDITOR</Type>
<Name>Var Table</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<PageComment><![CDATA[]]></PageComment>
<Variable>
<Name><![CDATA[font]]></Name>
<Value><![CDATA["normal normal 2vw "]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[zero]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[xmin]]></Name>
<Value><![CDATA[-5]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[xmax]]></Name>
<Value><![CDATA[5]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[ymin]]></Name>
<Value><![CDATA[-5]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[ymax]]></Name>
<Value><![CDATA[5]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[range]]></Name>
<Value><![CDATA[xmax-xmin]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[range]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[rangex]]></Name>
<Value><![CDATA[xmax-xmin]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[rangey]]></Name>
<Value><![CDATA[ymax-ymin]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[sizex]]></Name>
<Value><![CDATA[rangex/20]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[sizey]]></Name>
<Value><![CDATA[rangey/20]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[sizex2]]></Name>
<Value><![CDATA[rangex/40]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[sizey2]]></Name>
<Value><![CDATA[rangey/40]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[selected]]></Name>
<Value><![CDATA["shm_with_xo=0,vo=2"]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[[1]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[text]]></Name>
<Value><![CDATA["playing, \npause to select"]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[textspeech]]></Name>
<Value><![CDATA["playing, \npause to select"]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[pi]]></Name>
<Value><![CDATA[Math.PI]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[pi2]]></Name>
<Value><![CDATA[2*pi]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[y1]]></Name>
<Value><![CDATA[sizey*5/2]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[ysize]]></Name>
<Value><![CDATA[0.2]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[angletext]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[ctahminusctam]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[angleshow]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[test]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[test1]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[isFirstGuess]]></Name>
<Value><![CDATA[true]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
</Content>
</Osejs.Model.Variables.Page>
<Osejs.Model.Variables.Page>
<Type>VARIABLE_EDITOR</Type>
<Name>layout</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<PageComment><![CDATA[]]></PageComment>
<Variable>
<Name><![CDATA[isAndroid]]></Name>
<Value><![CDATA[checkAndroid()]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[Width]]></Name>
<Value><![CDATA[(_isEPub)?"400":"100%"]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[display width]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[iOS]]></Name>
<Value><![CDATA[/iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[http://stackoverflow.com/questions/9038625/detect-if-device-is-ios]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[Android]]></Name>
<Value><![CDATA[/Android|android/i.test(navigator.userAgent)]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[iPad]]></Name>
<Value><![CDATA[/iPad/.test(navigator.userAgent) && !window.MSStream]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[http://stackoverflow.com/questions/9038625/detect-if-device-is-ios]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[iPhone]]></Name>
<Value><![CDATA[/iPhone|iPod/.test(navigator.userAgent) && !window.MSStream]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[http://stackoverflow.com/questions/9038625/detect-if-device-is-ios]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[Height]]></Name>
<Value><![CDATA[(_isEPub)?"500":"100%"]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[Width1]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[display width]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[Width2]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[display width]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[world]]></Name>
<Value><![CDATA[true]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[graph]]></Name>
<Value><![CDATA[true]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[disabledworld]]></Name>
<Value><![CDATA[false]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[disabled]]></Name>
<Value><![CDATA[false]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
</Content>
</Osejs.Model.Variables.Page>
<Osejs.Model.Variables.Page>
<Type>VARIABLE_EDITOR</Type>
<Name>simplespring</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<PageComment><![CDATA[]]></PageComment>
<Variable>
<Name><![CDATA[m]]></Name>
<Value><![CDATA[1]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[k]]></Name>
<Value><![CDATA[1]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[l]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[vx]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[vxs]]></Name>
<Value><![CDATA[vx]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[vxstored]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[t]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[treal]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[tstore]]></Name>
<Value><![CDATA[t]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[tcst]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[dt]]></Name>
<Value><![CDATA[1]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[f]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[nt]]></Name>
<Value><![CDATA[10]]></Value>
<Type><![CDATA[int]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[counterA]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[int]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[counterB]]></Name>
<Value><![CDATA[1]]></Value>
<Type><![CDATA[int]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[pointB]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[arraypointB]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[[nt]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[tpointB]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[tarraypointB]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[[nt]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[pointA]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[tpointA]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[arraypointA]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[[nt]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[tarraypointA]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[[nt]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[textA]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[[nt]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[textB]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[[nt]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
</Content>
</Osejs.Model.Variables.Page>
<Osejs.Model.Variables.Page>
<Type>VARIABLE_EDITOR</Type>
<Name>functionY</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<PageComment><![CDATA[]]></PageComment>
<Variable>
<Name><![CDATA[selectedmodel]]></Name>
<Value><![CDATA["2*sin(t)"]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[[1]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[functionY]]></Name>
<Value><![CDATA[selectedmodel+""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[xmodel]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[showmodel]]></Name>
<Value><![CDATA[false]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA["Y = "+_view._format(Acalculated,"0.0")+"sin(" +_view._format(w,"0.00")+"t"+_view._format(phi,"0.00")+")"]]></Comment>
</Variable>
</Content>
</Osejs.Model.Variables.Page>
<Osejs.Model.Variables.Page>
<Type>VARIABLE_EDITOR</Type>
<Name>acceleromoeter</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<PageComment><![CDATA[]]></PageComment>
<Variable>
<Name><![CDATA[]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
</Content>
</Osejs.Model.Variables.Page>
<Osejs.Model.Variables.Page>
<Type>VARIABLE_EDITOR</Type>
<Name>basic</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<PageComment><![CDATA[]]></PageComment>
<Variable>
<Name><![CDATA[D]]></Name>
<Value><![CDATA[range*0.95]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[size of the clock face]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[D2]]></Name>
<Value><![CDATA[D/2]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[R]]></Name>
<Value><![CDATA[range/2*1]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[ds]]></Name>
<Value><![CDATA[R*0.045]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[n]]></Name>
<Value><![CDATA[12]]></Value>
<Type><![CDATA[int]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[number of hour]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[n2]]></Name>
<Value><![CDATA[n*5]]></Value>
<Type><![CDATA[int]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[number of ticks of the clock 60]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[x]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[[n]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[y]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[[n]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[x1324hr]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[[n]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[y1324hr]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[[n]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[coloritick]]></Name>
<Value><![CDATA["rgba(0,0,0,1.0)"]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[[n]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[widthitick]]></Name>
<Value><![CDATA[2]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[[n]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[minfaceshow]]></Name>
<Value><![CDATA[false]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[msg]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[[n]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[msg1324hr]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[[n]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[msg60]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[[n]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[cs]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[[n]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[for drawing clock circle]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[Rm]]></Name>
<Value><![CDATA[xmax*0.7]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[radius of minutes]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[Rh]]></Name>
<Value><![CDATA[xmax*0.60]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[Rs]]></Name>
<Value><![CDATA[xmax*0.85]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[xs]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[[n2]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[ticks on the clock position]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[ys]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[[n2]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[ticks on the clock position]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[dxs]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[[n2]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[dys]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[[n2]]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
</Content>
</Osejs.Model.Variables.Page>
<Osejs.Model.Variables.Page>
<Type>VARIABLE_EDITOR</Type>
<Name>clock</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<PageComment><![CDATA[]]></PageComment>
<Variable>
<Name><![CDATA[show1324]]></Name>
<Value><![CDATA[true]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[elementinteracted]]></Name>
<Value><![CDATA[-1]]></Value>
<Type><![CDATA[int]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[detect]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[detecth]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[T]]></Name>
<Value><![CDATA[60]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[vs]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[vm]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[vmrandom]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[vmtest]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[vh]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[vhtest]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[vhrandom]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[vh12text]]></Name>
<Value><![CDATA[vh]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[vhs]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[store value for drag to work]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[vms]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[store value for drag to work]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[vss]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[store value for drag to work]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[sx]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[sy]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[mx]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[my]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[hx]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[hy]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[twofourhourformat]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[twofourhourformatb]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[cta]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[angle of second hand]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[ctam]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[ctah]]></Name>
<Value><![CDATA[0.0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[digitalAMPMx]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[digitalAMPMy]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
</Content>
</Osejs.Model.Variables.Page>
<Osejs.Model.Variables.Page>
<Type>VARIABLE_EDITOR</Type>
<Name>words</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<PageComment><![CDATA[]]></PageComment>
<Variable>
<Name><![CDATA[wordhintshow]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[secondhandshow]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[minutehandshow]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[daynightshow]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[digitalshow]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[ampmtext]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[digitalshow2]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[myFont1]]></Name>
<Value><![CDATA["normal normal 30px digital-7"]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[myFont]]></Name>
<Value><![CDATA["normal normal 40px digital-7"]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[digitalx]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[digitaly]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[digitalgroupx]]></Name>
<Value><![CDATA[xmin]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[digitalgroupy]]></Name>
<Value><![CDATA[ymin+sizey]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[teachingmode]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[wordsshow]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[wordhour]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[wordhour1]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[wordmin]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[words]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[test]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[wordsx]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[wordsy]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
</Content>
</Osejs.Model.Variables.Page>
<Osejs.Model.Variables.Page>
<Type>VARIABLE_EDITOR</Type>
<Name>mobile</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<PageComment><![CDATA[]]></PageComment>
<Variable>
<Name><![CDATA[mIOSkind]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
</Content>
</Osejs.Model.Variables.Page>
<Osejs.Model.Variables.Page>
<Type>VARIABLE_EDITOR</Type>
<Name>check</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<PageComment><![CDATA[]]></PageComment>
<Variable>
<Name><![CDATA[quiz]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[questionnumber]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[score]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[counter]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[int]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[attempts]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[int]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[showAnswerFlag]]></Name>
<Value><![CDATA[false]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[K1fcorrect]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[l_enterK1f]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[K1fcorrectbackground]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[enterK1f]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[l_answer]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[l_question]]></Name>
<Value><![CDATA[""]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[angleinput]]></Name>
<Value><![CDATA[0]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[showangleinput]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[boolean]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[String]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
</Content>
</Osejs.Model.Variables.Page>
<Osejs.Model.Variables.Page>
<Type>VARIABLE_EDITOR</Type>
<Name>real time</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<PageComment><![CDATA[]]></PageComment>
<Variable>
<Name><![CDATA[now]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
<Variable>
<Name><![CDATA[]]></Name>
<Value><![CDATA[]]></Value>
<Type><![CDATA[double]]></Type>
<Dimension><![CDATA[]]></Dimension>
<Domain><![CDATA[public]]></Domain>
<Comment><![CDATA[null]]></Comment>
</Variable>
</Content>
</Osejs.Model.Variables.Page>
</Osejs.Model.Variables>
<Osejs.Model.Initialization>
<Osejs.Model.Initialization.Page>
<Type>CODE_EDITOR</Type>
<Name>Init Page</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
if ( selected[0]==="user_defined"){
  
  }

else if ( selected[0]==="part1+part2=whole"){

  }

  
 
  

]]></Code>
</Content>
</Osejs.Model.Initialization.Page>
<Osejs.Model.Initialization.Page>
<Type>CODE_EDITOR</Type>
<Name>undefined</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
if (Width1==undefined){
  Width1="100%";
  } 
  if (Width2==undefined){
  Width2="0%";
  }
  //teachingmode
if (teachingmode==undefined){
  teachingmode=false;
  }
  //secondhandshow
if (secondhandshow==undefined){
  secondhandshow=false;
  }  
  //minutehandshow
 if (minutehandshow==undefined){
  minutehandshow=true;
  } 
  //twofourhourformatb
 if (twofourhourformatb==undefined){
  twofourhourformatb=false;
  }   
  //digitalAMPMx
  if (digitalAMPMx==undefined){
  digitalAMPMx=0;
  } 
  if (digitalAMPMy==undefined){
  digitalAMPMy=0;
  } 
//wordsx
if (wordsx==undefined){
  wordsx=0;
  } 
  if (wordsy==undefined){
  wordsy=-2;
  }
  //
  if (showangleinput==undefined){
 showangleinput=false;
  }
  //attempts
   if (attempts==undefined){
 attempts=0;
  }
//wordsshow
//if (wordsshow==undefined){
//  wordsshow=false;
 // }
 if (quiz==undefined){
   quiz=false;
   }

]]></Code>
</Content>
</Osejs.Model.Initialization.Page>
<Osejs.Model.Initialization.Page>
<Type>CODE_EDITOR</Type>
<Name>svg</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
var container = document.createElement('div');
var svggradient = '<svg xmlns="http://www.w3.org/2000/svg" version="1.1"><defs>'+
  '  <radialGradient id="mygrandient" cx="50%" cy="50%" r="80%" fx="30%" fy="30%">'+
  '    <stop offset="0%" style="stop-color:rgb(0,255,0); stop-opacity:0.5" />'+
  '    <stop offset="100%" style="stop-color:rgb(100,150,100);stop-opacity:0.5" />'+
  '  </radialGradient>'+
  '</defs></svg>';
container.innerHTML = svggradient;
document.body.appendChild(container);
//"url(#mygrandient)"


var container = document.createElement('div');
var svggradient = '<svg xmlns="http://www.w3.org/2000/svg" version="1.1"><defs>'+
  '  <radialGradient id="mygrandient1" cx="50%" cy="50%" r="80%" fx="30%" fy="30%">'+
  '    <stop offset="0%" style="stop-color:rgb(0,0,0); stop-opacity:0.5" />'+
  '    <stop offset="100%" style="stop-color:rgb(0,50,50);stop-opacity:0.5" />'+
  '  </radialGradient>'+
  '</defs></svg>';
container.innerHTML = svggradient;
document.body.appendChild(container);
//"url(#mygrandient1)"

//shadow
var container = document.createElement('div');
var svggradient = '<svg xmlns="http://www.w3.org/2000/svg" version="1.1"><defs>'+
  '  <radialGradient id="mygrandient2" cx="10%" cy="80%" r="90%" fx="20%" fy="80%">'+
  '    <stop offset="0%" style="stop-color:rgb(255,255,255); stop-opacity:1" />'+
  '    <stop offset="100%" style="stop-color:rgb(0,0,0);stop-opacity:0.5" />'+
  '  </radialGradient>'+
  '</defs></svg>';
container.innerHTML = svggradient;
document.body.appendChild(container);
//"url(#mygrandient2)"

]]></Code>
</Content>
</Osejs.Model.Initialization.Page>
<Osejs.Model.Initialization.Page>
<Type>CODE_EDITOR</Type>
<Name>laytext1to12</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
var c=Math.PI*2/n; // assign as 2pi/12 to lay text
var ci;
var j;
for(var i=0;i<n;i++){
  j=i+1; // increase by 1 start as 1 instead of zero
  cs[i]=-c*j;
  x[i]=Rs*0.95*Math.sin(c*j); //position
  y[i]=Rs*0.95*Math.cos(c*j); //position of text
  msg[i]=j+""; // to lay 1 to 12 on clock face
msg60[i]=j*5+""; // to lay 5 to 60 on clock face
 x1324hr[i]=Rs*0.8*Math.sin(c*j); //position
  y1324hr[i]=Rs*0.8*Math.cos(c*j); //position of text
msg1324hr[i]=j+12;
}



]]></Code>
</Content>
</Osejs.Model.Initialization.Page>
<Osejs.Model.Initialization.Page>
<Type>CODE_EDITOR</Type>
<Name>ticks</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
var ctick=pi2/n2; // reassign c to be 2pi/n2 need 60 ticks now
// draw lines ticks on the clock
for(var itick=0;itick<n2;itick++){
var citick=ctick*itick; // spacings
 xs[itick]=D2*Math.sin(citick);
 ys[itick]=D2*Math.cos(citick);
 dxs[itick]=-ds*Math.sin(citick);
 dys[itick]=-ds*Math.cos(citick);
 coloritick[itick]="rgba(0,0,0,1.0)";
 widthitick[itick]=2;
 if(itick%5===0){ // longer if remainder equal 5
  dxs[itick]=2*dxs[itick];
  dys[itick]=2*dys[itick];
  coloritick[itick]="rgba(50,50,50,1.0)";
  widthitick[itick]=6;
 }
}
]]></Code>
</Content>
</Osejs.Model.Initialization.Page>
<Osejs.Model.Initialization.Page>
<Type>CODE_EDITOR</Type>
<Name>timetoday</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
var today = new Date();
vs = today.getSeconds();
vm = today.getMinutes();

vh =vh12text= today.getHours();
t = vs+vm*60+vh*60*60;
treal= t;
]]></Code>
</Content>
</Osejs.Model.Initialization.Page>
<Osejs.Model.Initialization.Page>
<Type>CODE_EDITOR</Type>
<Name>drawhands</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
sx = Rs*Math.sin(vs/60*pi2);
sy = Rs*Math.cos(vs/60*pi2);
mx=Rm*Math.sin(vm/60*pi2);
my=Rm*Math.cos(vm/60*pi2);
hx=Rh*Math.sin(vh/12*pi2);
hy=Rh*Math.cos(vh/12*pi2);



]]></Code>
</Content>
</Osejs.Model.Initialization.Page>
<Osejs.Model.Initialization.Page>
<Type>CODE_EDITOR</Type>
<Name>textsize</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
_view.plottingPanel.getMessageDecoration("TL").getFont().setFontSize("2vw");
_view.plottingPanel.getMessageDecoration("TR").getFont().setFontSize("2vw");
_view.plottingPanel.getMessageDecoration("BL").getFont().setFontSize("2vw");
_view.plottingPanel.getMessageDecoration("BR").getFont().setFontSize("2vw");

]]></Code>
</Content>
</Osejs.Model.Initialization.Page>
</Osejs.Model.Initialization>
<Osejs.Model.Evolution>
<Osejs.Model.Evolution.Page>
<Type>ODE_EDITOR</Type>
<Name>Evol Page</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<PreliminaryCode>
<Comment><![CDATA[Code to be executed before rate equations are evaluated]]></Comment>
<Code><![CDATA[
//now = new Date().getTime();
]]></Code>
</PreliminaryCode>
<ErrorHandling>
</ErrorHandling>
<DelayInitialCondition>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[

]]></Code>
</DelayInitialCondition>
<Discontinuities>
</Discontinuities>
<Events>
</Events>
<IndependentVariable>t</IndependentVariable>
<Increment>dt</Increment>
<Method>Euler</Method>
<Tolerance></Tolerance>
<InternalStep></InternalStep>
<MemoryLength></MemoryLength>
<MaximumStep></MaximumStep>
<MaximumNumberOfSteps>10000</MaximumNumberOfSteps>
<AbsoluteTolerance>0.00001</AbsoluteTolerance>
<RelativeTolerance></RelativeTolerance>
<EstimateFirstStep>false</EstimateFirstStep>
<AccelerationIndependentOfVelocity>false</AccelerationIndependentOfVelocity>
<ForceSynchronization>false</ForceSynchronization>
<UseBestInterpolation>false</UseBestInterpolation>
<EventMaximumStep></EventMaximumStep>
<DelayList><![CDATA[]]></DelayList>
<DelayMaximum><![CDATA[]]></DelayMaximum>
<DelayAddDiscont><![CDATA[]]></DelayAddDiscont>
<DirectIncidenceMatrix><![CDATA[]]></DirectIncidenceMatrix>
<Comment><![CDATA[]]></Comment>
</Content>
</Osejs.Model.Evolution.Page>
</Osejs.Model.Evolution>
<Osejs.Model.Constraints>
<Osejs.Model.Constraints.Page>
<Type>CODE_EDITOR</Type>
<Name>fixedlengthofarms</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
//calculate angles
ctas = cta = Math.atan2(sx,sy);

 //   ctam = Math.atan2(mx,my); // disable conflict with fu-kwun min hand drag

ctah = Math.atan2(hx,hy);
ctam = Math.atan2(mx,my); //added back for angle calculation to be correct
// t = vs+vm*60+vh*60*60;
//decompose t into the 3 arms
if (teachingmode===true){
vh =vh12text= Math.floor(t/3600)%24;
vm = Math.floor((t%(3600))/60);

vs = ((t%(3600))%60);
}
else {
vh =vh12text = (t/3600)%24; // need %24 to bring 25 down to 1
if (Math.floor(vh12text)==0) vh12text = 12 // to make 00 into 12 display
vm = ((t%(3600))/60);

vs = ((t%(3600))%60);
}
vms=vm; //make vms store vm value from fu-kwun
// make arms move
sx = Rs*Math.sin(vs/60*pi2);
sy = Rs*Math.cos(vs/60*pi2);
mx=Rm*Math.sin(vm/60*pi2);
my=Rm*Math.cos(vm/60*pi2);
hx=Rh*Math.sin(vh/12*pi2);
hy=Rh*Math.cos(vh/12*pi2);


]]></Code>
</Content>
</Osejs.Model.Constraints.Page>
<Osejs.Model.Constraints.Page>
<Type>CODE_EDITOR</Type>
<Name>angle</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
ctahminusctam=ctah-ctam;
if (ctah-ctam>=0){//positive show as normal
angletext = "ϑ="+(((ctah-ctam)*360/(2*pi)%360)).toFixed(0)+"°";
}
else if  (ctah-ctam<0){//negative need to add 2*pi to make + show as normal
angletext = "ϑ="+(((ctah-ctam-2*pi)*360/(2*pi)%360)).toFixed(0)+"°";
}

]]></Code>
</Content>
</Osejs.Model.Constraints.Page>
<Osejs.Model.Constraints.Page>
<Type>CODE_EDITOR</Type>
<Name>12</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
//vh = vh12text;
if ((vh%24)<1){ // to address HH =00 change to 12
  vh12text = vh+12;
 // alert(vh%24);
  }
if ((vh%24)>=13){ //to address HH=13 to 24 change to 1 to 12
  vh12text = vh-12;
 // alert(vh%12+"twelve");
  }


//24hour format
if (twofourhourformatb== true){
twofourhourformat= "Primary 4-5 \n24-hour clock"+"\nhour = "+pad(Math.floor(vh)%24)+"\n"+"minute = "+pad(Math.floor(vm))+"\n"+"second = "+pad(Math.floor(vs));
}
else {
  twofourhourformat="";
  }

]]></Code>
</Content>
</Osejs.Model.Constraints.Page>
<Osejs.Model.Constraints.Page>
<Type>CODE_EDITOR</Type>
<Name>am/pm</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
if ((vh%24<12)&&secondhandshow==true){

ampmtext = pad(Math.floor(vh12text%24))+" : "+pad(Math.floor(vm))+" : "+pad(Math.floor(vs))+ " A.M.";
}
else if ((vh%24 >=12)&&secondhandshow==true){
// ampmtext = pad(Math.floor(vh12text%12))+" : "+pad(Math.floor(vm))+" : "+pad(Math.floor(vs))+ " PM";
 ampmtext = pad(Math.floor(vh12text))+" : "+pad(Math.floor(vm))+" : "+pad(Math.floor(vs))+ " P.M.";
  }
  
  else if ((vh%24<12)&&secondhandshow==false){

ampmtext = pad(Math.floor(vh12text%24))+" : "+pad(Math.floor(vm))+" A.M.";
}
else if ((vh%24 >=12)&&secondhandshow==false){
// ampmtext = pad(Math.floor(vh12text%12))+" : "+pad(Math.floor(vm))+" : "+pad(Math.floor(vs))+ " PM";
 ampmtext = pad(Math.floor(vh12text))+" : "+pad(Math.floor(vm))+ " P.M.";
  }

]]></Code>
</Content>
</Osejs.Model.Constraints.Page>
<Osejs.Model.Constraints.Page>
<Type>CODE_EDITOR</Type>
<Name>words</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
//if (vm===0){
 // wordmin = "_";
//}
 if (Math.floor(vm)==1){
  wordmin = "one minute past";
}
else if (Math.floor(vm)==2){
  wordmin = "two minutes past";
}
else if (Math.floor(vm)==3){
  wordmin = "three minutes past";
}
else if (Math.floor(vm)==4){
  wordmin = "four minutes past";
}
else if (Math.floor(vm)==5){
  wordmin = "five minutes past";
}
else if (Math.floor(vm)==6){
  wordmin = "six minutes past";
}
else if (Math.floor(vm)==7){
  wordmin = "seven minutes past";
}
else if (Math.floor(vm)==8){
  wordmin = "eight minutes past";
}
else if (Math.floor(vm)==9){
  wordmin = "nine minutes past";
}
else if (Math.floor(vm)==10){
  wordmin = "ten minutes past";
}
else if (Math.floor(vm)==11){
  wordmin = "eleven minute past";
}
else if (Math.floor(vm)==12){
  wordmin = "twelve minutes past";
}
else if (Math.floor(vm)==13){
  wordmin = "thirteen minutes past";
}
else if (Math.floor(vm)==14){
  wordmin = "fourteen minutes past";
}
else if (Math.floor(vm)==15){
  wordmin = "quarter past ";
}
else if (Math.floor(vm)==16){
  wordmin = "sixteen minutes past";
}
else if (Math.floor(vm)==17){
  wordmin = "seventeen minutes past";
}
else if (Math.floor(vm)==18){
  wordmin = "eighteen minutes past";
}
else if (Math.floor(vm)==19){
  wordmin = "nineteen minutes past";
}
else if (Math.floor(vm)==20){
  wordmin = "twenty minutes past";
}
else if (Math.floor(vm)==21){
  wordmin = "twenty one minutes to";
}
else if (Math.floor(vm)==22){
  wordmin = "twenty two minutes past";
}
else if (Math.floor(vm)==23){
  wordmin = "twenty three minutes past";
}
else if (Math.floor(vm)==24){
  wordmin = "twenty four minutes past";
}
else if (Math.floor(vm)==25){
  wordmin = "twenty five minutes past ";
}
else if (Math.floor(vm)==26){
  wordmin = "twenty six minutes past";
}
else if (Math.floor(vm)==27){
  wordmin = "twenty seven minutes past";
}
else if (Math.floor(vm)==28){
  wordmin = "twenty eight minutes past";
}
else if (Math.floor(vm)==29){
  wordmin = "twenty nine minutes past";
}
else if (Math.floor(vm)==30){
  wordmin = "half past ";
}
else if (Math.floor(vm)==31){
  wordmin = "twenty nine minutes to";
}
else if (Math.floor(vm)==32){
  wordmin = "twenty eight minutes to";
}
else if (Math.floor(vm)==33){
  wordmin = "twenty seven minutes to";
}
else if (Math.floor(vm)==34){
  wordmin = "twenty six minutes to";
}
else if (Math.floor(vm)==35){
  wordmin = "twenty five minutes to ";
}
else if (Math.floor(vm)==36){
  wordmin = "twenty four minutes to";
}
else if (Math.floor(vm)==37){
  wordmin = "twenty three minutes to";
}
else if (Math.floor(vm)==38){
  wordmin = "twenty two minutes to";
}
else if (Math.floor(vm)==39){
  wordmin = "twenty one minutes to";
}
else if (Math.floor(vm)==40){
  wordmin = "twenty minutes to";
}
else if (Math.floor(vm)==41){
  wordmin = "nineteen minutes to";
}
else if (Math.floor(vm)==42){
  wordmin = "eighteen minutes to";
}
else if (Math.floor(vm)==43){
  wordmin = "seventeen minutes to";
}
else if (Math.floor(vm)==44){
  wordmin = "sixteen minutes to";
}
else if (Math.floor(vm)==45){
  wordmin = "quarter to ";
}
else if (Math.floor(vm)==46){
  wordmin = "fourteen minutes to";
}
else if (Math.floor(vm)==47){
  wordmin = "thirteen minutes to";
}
else if (Math.floor(vm)==48){
  wordmin = "twelve minutes to";
}
else if (Math.floor(vm)==49){
  wordmin = "eleven minutes to";
}
else if (Math.floor(vm)==50){
  wordmin = "ten minutes to";
}
else if (Math.floor(vm)==51){
  wordmin = "nine minutes to";
}
else if (Math.floor(vm)==52){
  wordmin = "eight minutes to";
}
else if (Math.floor(vm)==53){
  wordmin = "seven minutes to";
}
else if (Math.floor(vm)==54){
  wordmin = "six minutes to";
}
else if (Math.floor(vm)==55){
  wordmin = "five minutes to";
}
else if (Math.floor(vm)==56){
  wordmin = "four minutes to";
}
else if (Math.floor(vm)==57){
  wordmin = "three minutes to";
}
else if (Math.floor(vm)==58){
  wordmin = "two minutes to";
}
else if (Math.floor(vm)==59){
  wordmin = "one minute to";
}




]]></Code>
</Content>
</Osejs.Model.Constraints.Page>
<Osejs.Model.Constraints.Page>
<Type>CODE_EDITOR</Type>
<Name>hour</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
if (vm>0){
  
if (Math.floor(vh)==0){
  wordhour = "twelve ";
  wordhour1 = "one ";
}
 else if (Math.floor(vh)==1){
  wordhour = "one ";
   wordhour1 = "two ";
}
else if (Math.floor(vh)==2){
  wordhour = "two ";
  wordhour1 = "three ";
}
else if (Math.floor(vh)==3){
  wordhour = "three ";
  wordhour1 = "four ";
}
else if (Math.floor(vh)==4){
  wordhour = "four ";
  wordhour1 = "five ";
}
else if (Math.floor(vh)==5){
  wordhour = "five ";
   wordhour1 = "six ";
}
else if (Math.floor(vh)==6){
  wordhour = "six ";
  wordhour1 = "seven ";
}
else if (Math.floor(vh)==7){
  wordhour = "seven ";
  wordhour1 = "eight ";
}
else if (Math.floor(vh)==8){
  wordhour = "eight ";
  wordhour1 = "nine ";
}
else if (Math.floor(vh)==9){
  wordhour = "nine ";
   wordhour1 = "ten ";
}
else if (Math.floor(vh)==10){
  wordhour = "ten ";
  wordhour1 = "eleven ";
}
else if (Math.floor(vh)==11){
  wordhour = "eleven ";
  wordhour1 = "twelve ";
}
else if (Math.floor(vh)==12){
  wordhour = "twelve ";
}
else if (Math.floor(vh)==13){
  wordhour = "one ";
  wordhour1 = "two ";
}
else if (Math.floor(vh)==14){
  wordhour = "two ";
  wordhour1 = "three ";
}
else if (Math.floor(vh)==15){
  wordhour = "three ";
   wordhour1 = "four ";
}
else if (Math.floor(vh)==16){
  wordhour = "four ";
  wordhour1 = "five ";
}
else if (Math.floor(vh)==17){
  wordhour = "five ";
   wordhour1 = "six ";
}
else if (Math.floor(vh)==18){
  wordhour = "six ";
  wordhour1 = "seven ";
}
else if (Math.floor(vh)==19){
  wordhour = "seven ";
   wordhour1 = "eight ";
}
else if (Math.floor(vh)==20){
  wordhour = "eight ";
   wordhour1 = "nine ";
}
else if (Math.floor(vh)==21){
  wordhour = "nine ";
  wordhour1 = "ten ";
}
else if (Math.floor(vh)==22){
  wordhour = "ten ";
  wordhour1 = "eleven ";
}
else if (Math.floor(vh)==23){
  wordhour = "eleven ";
  wordhour1 = "twelve ";
}
}
]]></Code>
</Content>
</Osejs.Model.Constraints.Page>
<Osejs.Model.Constraints.Page>
<Type>CODE_EDITOR</Type>
<Name>exactwords</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
 if (vm>=1&&vm<31){
words = ""+wordmin+" "+wordhour;
}
else if (vm=>31&&vm<=59){
words = ""+wordmin+" "+wordhour1;
}
//exact
 if (vh>=0&&vh<1&&vm>=0&&vm<1){
  words = "twelve O'clock";
 // alert(words);
}
else if (vh>=1&&vh<2&&vm>=0&&vm<1){
  words = "one O'clock";
}
else if (vh>=2&&vh<3&&vm>=0&&vm<1){
  words = "two O'clock";
}
else if (vh>=3&&vh<4&&vm>=0&&vm<1){
  words = "three O'clock";
}
else if (vh>=4&&vh<5&&vm>=0&&vm<1){
  words = "four O'clock";
 // alert(words);
}
else if (vh>=5&&vh<6&&vm>=0&&vm<1){
  words = "five O'clock";
}
else if (vh>=6&&vh<7&&vm>=0&&vm<1){
  words = "six O'clock";
}
else if (vh>=7&&vh<8&&vm>=0&&vm<1){
  words = "seven O'clock";
}
else if (vh>=8&&vh<9&&vm>=0&&vm<1){
  words = "eight O'clock";
}
else if (vh>=9&&vh<10&&vm>=0&&vm<1){
  words = "nine O'clock";
}
else if (vh>=10&&vh<11&&vm>=0&&vm<1){
  words = "ten O'clock";
}
else if (vh>=11&&vh<12&&vm>=0&&vm<1){
  words = "eleven O'clock";
}
else if (vh>=12&&vh<13&&vm>=0&&vm<1){
  words = "twelve O'clock";
}
else if (vh>=13&&vh<14&&vm>=0&&vm<1){
  words = "one O'clock";
}
else if (vh>=14&&vh<15&&vm>=0&&vm<1){
  words = "two O'clock";
}
else if (vh>=15&&vh<16&&vm>=0&&vm<1){
  words = "three O'clock";
}
else if (vh>=16&&vh<17&&vm>=0&&vm<1){
  words = "four O'clock";
}
else if (vh>=17&&vh<18&&vm>=0&&vm<1){
  words = "five O'clock";
}
else if (vh>=18&&vh<19&&vm>=0&&vm<1){
  words = "six O'clock";
}
else if (vh>=19&&vh<20&&vm>=0&&vm<1){
  words = "seven O'clock";
}
else if (vh>=20&&vh<21&&vm>=0&&vm<1){
  words = "eight O'clock";
}
else if (vh>=21&&vh<22&&vm>=0&&vm<1){
  words = "nine O'clock";
}
else if (vh>=22&&vh<23&&vm>=0&&vm<1){
  words = "ten O'clock";
}
else if (vh>=23&&vh<24&&vm>=0&&vm<1){
  words = "eleven O'clock";
  
}



//words = wordhour;
]]></Code>
</Content>
</Osejs.Model.Constraints.Page>
<Osejs.Model.Constraints.Page>
<Type>CODE_EDITOR</Type>
<Name>check</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
if (showAnswerFlag === false) {
  K1fcorrect = "";
}
else {
  //l_enterK1f===_view._format(l_answer,"0.0"))
  //  if(Math.abs(massscaleo-functionY)<0.005){
  // solve 5 clock inaccurate feedback convert to time t
  
  const targetT = (vhrandom % 12) * 3600 + vmrandom * 60;
  // t is in SECONDS
  // targetT is in SECONDS
  // 12 hours = 12 * 60 * 60
  // the distance between them must be < 30 SECONDS, mod 12*60*60 seconds
 
  // CHANGE
  if (Math.abs(t - targetT + 12 * 60 * 60) % (12 * 60 * 60) < 30) {
    K1fcorrect = "Great! You have \nthe right answer!!, \nthe time is \n " + words;
    //alert(K1fcorrect);
    if (score < 8)
      score = score + 1;
    K1fcorrectbackground = "rgba(0,255,0,255)";
    
    // CHANGE
    const formattedTime = Math.floor(vh % 12) + (vm>= 10 ? ":" : ":0") + vm;
    onAnswer(formattedTime, true);
    awardQuestionMarks();
    endQuestion();
    
    //quiz again

    if (score < 8) {
      quizmaker();
    }
  }
  else { // wrong give feedback
    const formattedTime = Math.floor(vh % 12) + (vm >= 10 ? ":" : ":0") + vm;
    
    // CHANGE
    if (isFirstGuess) {
      onAnswer(formattedTime, false);
      isFirstGuess = false;
    }
  
    K1fcorrect = " Incorrect,\nyour input is \nout by " + _view._format((t / 60 - (vmrandom + vhrandom * 60)), "0") + "minutes";
    K1fcorrectbackground = "rgba(255,0,0,255)";
    if ((_view._format((t / 60 - (vmrandom + vhrandom * 60)), "0")) > 30) { //positive
      K1fcorrect = " Incorrect,\nyour input is \nout by " + _view._format(Math.floor(t / 60 / 60 - (vmrandom / 60 + vhrandom)), "0") + "hour and" + _view._format((t / 60 - (vmrandom + vhrandom * 60)) % 60, "0") + "minutes";
      K1fcorrectbackground = "rgba(255,0,0,255)";
    }
    else if ((_view._format((t / 60 - (vmrandom + vhrandom * 60)), "0")) < -30) { //positive
      K1fcorrect = " Incorrect,\nyour input is \nout by " + _view._format(-Math.floor(-t / 60 / 60 + (vmrandom / 60 + vhrandom)), "0") + "hour and" + _view._format((t / 60 - (vmrandom + vhrandom * 60)) % 60, "0") + "minutes";
      K1fcorrectbackground = "rgba(255,0,0,255)";
    }

  }

  counter = 0; // make speak once

}
]]></Code>
</Content>
</Osejs.Model.Constraints.Page>
</Osejs.Model.Constraints>
<Osejs.Model.Library>
<Osejs.Model.Library.Page>
<Type>LIBRARY_EDITOR</Type>
<Name>questionLib</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
const _debugMode = false;
const questionStack = [];
const questionHistory = Object.create(null);

const _nullFunction = _debugMode ? 
  console.log
  :
  function(){};


// for assessment.json event - start
function startQuestion(questionName) {
  _view._addInteraction(_nullFunction, {action:"questionStart", name:questionName}, {element:"questionLib", property:"value"});
  questionStack.push(questionName);
}

// for assessment.json history
function _addQuestionHistory(questionName, history) {
  if (!(questionName in questionHistory)) {
    questionHistory[questionName] = [];
  }
  questionHistory[questionName].push(history);
}

function _getQuestionHistory(questionName) {
  if (questionName in questionHistory) {
    return questionHistory[questionName].join("\n");
  } else {
    return "";
  }
}

function addQuestionHistory(history) {
  if (questionStack.length > 0) {
    const questionName = questionStack[questionStack.length - 1];
    _addQuestionHistory(questionName, history);
  }
}

// for assessment.json event - states
function onAnswer(answer, isCorrect=false, history=answer) {
  if (questionStack.length > 0) {
    const explainer = Object.create(null);
    explainer[true] = " ✅";
    explainer[false] = " ❌";
    const questionName = questionStack[questionStack.length - 1];

    _addQuestionHistory(questionName, history + explainer[isCorrect]);
    const outputHistory = _getQuestionHistory(questionName);

    _view._addInteraction(_nullFunction, {name:questionName, answer:answer, isCorrect:isCorrect, action:"questionAnswer"}, {property: "answer", element:"questionLib"});
    _view._addInteraction(_nullFunction, outputHistory, {property: "historyFor" + questionName, element: "questionLib"});
  }
}

// for assessment.json event - end
function endQuestion() {
  if (questionStack.length > 0) {
    const questionName = questionStack.pop();
    _view._addInteraction(_nullFunction, {action:"questionEnd", name:questionName}, {element: "questionLib", property: "value"});
  }
}


// for assessment.json marks
function awardQuestionMarks(marks=1) {
  if (questionStack.length > 0) {
    const questionName = questionStack[questionStack.length - 1];
    _view._addInteraction(_nullFunction, marks, {element:"questionLib", property:"awardMarkFor"+questionName});
  }
}
]]></Code>
</Content>
</Osejs.Model.Library.Page>
<Osejs.Model.Library.Page>
<Type>LIBRARY_EDITOR</Type>
<Name>android</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
//code reference: http://davidwalsh.name/detect-android
function checkAndroid () {
  var ua = navigator.userAgent.toLowerCase();
  return ua.indexOf("android") > -1; //&& ua.indexOf("mobile");
}
]]></Code>
</Content>
</Osejs.Model.Library.Page>
<Osejs.Model.Library.Page>
<Type>LIBRARY_EDITOR</Type>
<Name>changeOrientation</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
// code to be copied to EJSS source code under Custom and used in drawingPanel3D and plottingPanel2D
// address the problem is height difference is iOS app , epub, and Firefox
// user need to change only k and kepub
// copy %changeOrientation()% into the Height Field of drawingPanel3D and plottingPanel2D
function changeOrientation() {
 
var k =0.9 ; // k control height 1 is for full screen, 0.9 shorten etc
var kepub =0.9 ;
// check platform for Apps
try { // allow code to run in Student Learning Space 
  var iOSapp =  (typeof parent.device != 'undefined' && parent.device.platform == "iOS");
  var Androidapp = (typeof parent.device != 'undefined' && parent.device.platform == "Android");
} catch(e) {
  var iOSapp = false;
  var Androidapp = false;
}
// check platform for web browsers
var iOS =/iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;
var iPad =/iPad/.test(navigator.userAgent) && !window.MSStream;
var iPhone = /iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;
var Android= /Android|android/i.test(navigator.userAgent);

//navigator
var Firefox = navigator.userAgent.indexOf("Firefox") != -1;
 
switch (window.orientation) { // using window.orientation as deciding factor
  case 0:
  case 180:
    this.screenOrientation = 'portrait';
    if (iOSapp){ // does not seems to work
      
      return window.screen.height*k;  //0.1 for app and 0.1 for nonfullscreenapp  
    
    }
    else if (_isEPub){ // does not seems to work
      //   return Math.max(window.screen.width,window.screen.height)*0.9;
      return window.innerHeight*kepub;  //0.1 for app and 0.1 for nonfullscreenapp  
      // return window.screen.height;
      //  return window.innerHeight;
      // return document.documentElement.clientHeight;
    }
   
    else {
     
      return 100*k+"vh";
    }
    break;
  case 90:
  case -90:
    this.screenOrientation = 'landscape';
 
    if (iOSapp){ // App
      return window.screen.width*k;  
      // return window.screen.height;
      //  return window.innerHeight;
      //  return document.documentElement.clientHeight;
    }
    else if (_isEPub){ // does not seems to work
      //   return Math.max(window.screen.width,window.screen.height)*0.9;
      return window.innerHeight*kepub;  //0.1 for app and 0.1 for nonfullscreenapp  
      // return window.screen.height;
      //  return window.innerHeight;
      // return document.documentElement.clientHeight;
    }
   
    else {
      return 100*k+"vh";
      }
    break;
  default:
    this.screenOrientation = 'unknown';
    //       return (iPad)?""+(window.screen.width+window.screen.height)*0.4:((iPhone)?""+window.screen.width:_view._format(window.innerHeight*0.9,"0"));
     if (Firefox){
      return window.innerHeight*k;// number as of 20180831 Firefox does not support vh yet so need a separate line to handle
      }
      
      else {
        return 100*k+"vh"; // string every other solid deployment, Android Android App web chrome etc
        //console.log('hello');
}

}
 
}
]]></Code>
</Content>
</Osejs.Model.Library.Page>
<Osejs.Model.Library.Page>
<Type>LIBRARY_EDITOR</Type>
<Name>fullscreen</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[

function toggleFullScreen() {
  if (!document.fullscreenElement &&    // alternative standard method
      !document.mozFullScreenElement && !document.webkitFullscreenElement && !document.msFullscreenElement ) {  // current working methods
    if (document.documentElement.requestFullscreen) {
      document.documentElement.requestFullscreen();
    } else if (document.documentElement.msRequestFullscreen) {
      document.documentElement.msRequestFullscreen();
    } else if (document.documentElement.mozRequestFullScreen) {
      document.documentElement.mozRequestFullScreen();
    } else if (document.documentElement.webkitRequestFullscreen) {
      document.documentElement.webkitRequestFullscreen();
    }
  } else {
    if (document.exitFullscreen) {
      document.exitFullscreen();
    } else if (document.msExitFullscreen) {
      document.msExitFullscreen();
    } else if (document.mozCancelFullScreen) {
      document.mozCancelFullScreen();
    } else if (document.webkitExitFullscreen) {
      document.webkitExitFullscreen();
    }
  }
}
]]></Code>
</Content>
</Osejs.Model.Library.Page>
<Osejs.Model.Library.Page>
<Type>LIBRARY_EDITOR</Type>
<Name>pad</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
//http://stackoverflow.com/questions/8089875/show-a-leading-zero-if-a-number-is-less-than-10
//function pad(n) {
 //   return (n < 10) ? ("0" + n) : n;
//}

function pad(n) { 
if (n < 10 & n >=0) return ("0" + n); 
if(n < 0 & n > -11) return ("-0" + Math.abs(n)); 
return n; }

]]></Code>
</Content>
</Osejs.Model.Library.Page>
<Osejs.Model.Library.Page>
<Type>LIBRARY_EDITOR</Type>
<Name>quizmaker</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
function quizmaker() {
  //var opts = _view.models.getProperty("SelectedOptions");  // array of options
  //  var option = (opts.length > 0)? opts[0]:""; // selected option 
  // CHANGE
  isFirstGuess = true;
  
  var option = _view.models.getProperty("SelectedOptions");
  _pause();
  //showmodel=true;
  //showAnswerFlag=true;
  //functionY=option+"";
  questionnumber = questionnumber + 1;
  
  if (option == "random 5min") {
    showAnswerFlag = false; //turn off answer
    vhrandom = Math.floor(Math.random() * 12);
    if (vhrandom == 0) {
      vhrandom = 12;
    }
    vmrandom = Math.floor(Math.floor(Math.random() * 60 / 5) * 5);
    //l_question = "Drag to "+vh +" hour and "+vm+" minute";
    //vh=1;
    //vm=0;
    vs = 0;
    trandom = vs + vmrandom * 60 + vhrandom * 60 * 60;
    //_pause();
    //textspeech =  "Question "+questionnumber +": Drag to "+vhrandom +" O'clock and "+vmrandom+" minutes.";
    text = "Question " + questionnumber + ": <br />Drag to " + vhrandom + " O'clock and " + vmrandom + " minutes.";
    
    startQuestion("Q" + questionnumber);
    const formattedTime = vhrandom + (vmrandom >= 10 ? ":" : ":0") + vmrandom;
    addQuestionHistory("Q" + questionnumber + ": Indicate " + formattedTime);
    
    EJSS_INTERFACE.BoxPanel.showOkDialog(K1fcorrect + "<br />" + text + " <br />Score = " + score);
    textspeech = "Question " + questionnumber + ": Drag to " + vhrandom + " O'clock and " + vmrandom + " minutes.";

  }
  // CHANGE
  ///*
  if (option == "random 30min") {
    showAnswerFlag = false; //turn off answer
    vhrandom = Math.floor(Math.random() * 12);
    if (vhrandom == 0) {
      vhrandom = 12;
    }
    vmrandom = Math.floor(Math.floor(Math.random() * 60 / 30) * 30);
    //l_question = "Drag to "+vh +" hour and "+vm+" minute";
    //vh=1;
    //vm=0;
    vs = 0;
    trandom = vs + vmrandom * 60 + vhrandom * 60 * 60;
    //_pause();
    text = "Question " + questionnumber + ": <br />Drag to " + vhrandom + " O'clock and " + vmrandom + " minutes";
    textspeech = "Question " + questionnumber + ": Drag to " + vhrandom + " O'clock and " + vmrandom + " minutes";
    //alert(text);
    EJSS_INTERFACE.BoxPanel.showOkDialog(text + " <br />Score = " + score);
  }
  else if (option == "show me") {
    vh = vhrandom;
    vm = vmrandom;
    vs = 0;
    t = vs + vm * 60 + vh * 60 * 60;
    text = "The answer is " + vhrandom + " O'clock and " + vmrandom + " minutes";
    textspeech = "The answer is " + vhrandom + " O'clock and " + vmrandom + " minutes";
  }
  //*/
  
  counter = 1; // make speak once
  // found out that the menu cannot have multiples set to false, removed as iOs app responsively
  // strangely i need to sound to overcome a problem on iOS, the delay helps to restore touch on the hands of the clocks
  speech(textspeech);

}

]]></Code>
</Content>
</Osejs.Model.Library.Page>
<Osejs.Model.Library.Page>
<Type>LIBRARY_EDITOR</Type>
<Name>speech</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<Comment><![CDATA[]]></Comment>
<Code><![CDATA[
// copy this custom function
// in iOS need to add speech to the play button as On iOS the API works but must be triggered by a user action callback, like a response to a tap event, to provide a better experience to users and avoid unexpected sounds out of your phone
function speech (option) {


try { // allow code to run in Student Learning Space 
var isCordova = (!!this.parent.cordova || !!window.cordova);
if(isCordova) { // check it is running in Android or iOS
       // parent.TTS.speak({text:option,locale:'zh-CN'});
	parent.TTS.speak({text:option,locale:'us-EN'});
	// parent.TTS.speak({text:option,locale:'en-US'});
	// parent.TTS.speak({text:option,locale:'id-ID'});
} 
} 
catch(e) {
  var isCordova = false;
  }
  
   var msg = new SpeechSynthesisUtterance(option);

  //https://stackoverflow.com/questions/43983845/speechsynthesis-api-for-chinese-firefox
  // Set the text.
	//msg.text = option; 
	//https://forums.developer.apple.com/message/323564#323564
	// comment out the next 2 lines for english
//msg.voice = speechSynthesis.getVoices().filter(function(voice) { return voice.name == 'Ting-Ting'; })[0];
//msg.lang = 'zh-CH'; // need for android?
//msg.lang = 'id-ID'; // need for android?
msg.lang = 'us-EN'; // need for android?

//https://flaviocopes.com/speech-synthesis-api/
//debug
//console.log(`Voices #: ${speechSynthesis.getVoices().length}`)
//speechSynthesis.getVoices().forEach(voice => {
// console.log(voice.name, voice.lang)
//})
//debug

// Queue this utterance.
window.speechSynthesis.speak(msg);



 

}
]]></Code>
</Content>
</Osejs.Model.Library.Page>
</Osejs.Model.Library>
<Osejs.Model.Elements>
</Osejs.Model.Elements>
</Osejs.Model>
<Osejs.HtmlView>
<Osejs.HtmlView.Page>
<Type>HTML_VIEW_EDITOR</Type>
<Name>HtmlView Page</Name>
<Active>true</Active>
<Internal>false</Internal>
<Content>
<RootProperties>
</RootProperties>
<Tree>
<HtmlView.Element>
<Expanded>true</Expanded>
<Type>Elements.Panel</Type>
<Name><![CDATA[fullscreen]]></Name>
<Property name="Height"><![CDATA[Height]]></Property>
<Property name="Width"><![CDATA[Width]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Expanded>true</Expanded>
<Type>Elements.Panel</Type>
<Name><![CDATA[controlPanel]]></Name>
<Parent><![CDATA[fullscreen]]></Parent>
<Property name="Width"><![CDATA["100%"]]></Property>
<Property name="Font"><![CDATA["normal normal 20px "]]></Property>
<Property name="Display"><![CDATA["inline-flex"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.ComboBox</Type>
<Name><![CDATA[comboBox]]></Name>
<Parent><![CDATA[controlPanel]]></Parent>
<Property name="Options"><![CDATA[["Teaching Mode off","Teaching Mode on","","Primary 1","12 O'clock","half past 12"," 1 O'clock","half past  1"," 2 O'clock","half past  2"," 3 O'clock","half past  3"," 4 O'clock","half past  4"," 5 O'clock","half past  5"," 6 O'clock","half past  6"," 7 O'clock","half past  7"," 8 O'clock","half past  8"," 9 O'clock","half past  9","10 O'clock","half past 10","11 O'clock","half past 11","","Primary 2","min face","hour face","Digital AM/PM","Digital AM/PM hide","","Primary 4","Second Hand show","Second Hand hide","Minute Hand show","Minute Hand hide","24hour format","12hour format","Night/Day show","Night/Day hide","Words show","Words hide","","Challenge","test angle","show angle","hide angle"]]]></Property>
<Property name="Tooltip"><![CDATA["select user_defined and drag the mass"]]></Property>
<Property name="OnChange"><![CDATA[//["","Night/Day show","Night/Day hide","Words show","Words hide","Teaching Mode on","Teaching Mode off"]
// option = _view.comboBox.getProperty("SelectedOptions");
//alert(option);
var opts = _view.comboBox.getProperty("SelectedOptions");  // array of options
    var option = (opts.length > 0)? opts[0]:""; // selected option 

if (option== "Words show") {
wordsshow=true;
wordsy=-5.5;
ymin = ymin-1;
}
else if (option== "Words hide") {
wordsshow=false;
ymin = ymin+1;
}
else if (option== "Teaching Mode on") {
teachingmode=true;
}
else if (option== "Teaching Mode off") {
teachingmode=false;
}
else if (option== "Second Hand show") {
secondhandshow=true;
dt=1;
twofourhourformatb=true;
}
else if (option== "Second Hand hide") {
secondhandshow=false;
dt=60;
}

//minutehandshow
else if (option== "Minute Hand show") {
minutehandshow=true;
//dt=1;
//twofourhourformatb=true;
}
else if (option== "Minute Hand hide") {
minutehandshow=false;
//dt=60;
}


//twofourhourformatb
else if (option== "Primary 4") {
twofourhourformatb=true;

}
else if (option== "Primary 2") {
twofourhourformatb=false;

}
//"Hints for words show","Hints for words off"
else if (option== "Hints for words show") {
wordhintshow=true;
 wordsy=-6;
}
else if (option== "Hints for words off") {
wordhintshow=false;
 
}

//"min face","hour face"
else if (option== "min face") {
minfaceshow=true;
}
else if (option== "hour face") {
minfaceshow=false;
}

//"Digital show","Digital hide"
else if (option== "Digital AM/PM") {
digitalshow2=true;
digitalAMPMx=8
digitalAMPMy=0;
//ymax= ymax+2;
//Width1="50%";
//Width2="50%";
}
else if (option== "Digital AM/PM hide") {
digitalshow2=false;
//ymax= ymax-2;
}
else if (option== "24hour format") {
twofourhourformatb=true;
}
else if (option== "12hour format") {
twofourhourformatb=false;
}
else if (option== "Digital show") {
digitalshow=true;
//Width1="50%";
//Width2="50%";
}
else if (option== "Digital hide") {
digitalshow=false;
}

//"12 O'clock","half past 12"," 1 O'clock","half past 1 "," 2 O'clock","half past 2 "
else if (option== "12 O'clock") {
vh=0;
vm=0;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}

//daynightshow
else if (option== "Night/Day show") {
daynightshow=true;
}
else if (option== "Night/Day hide") {
daynightshow=false;
}
else if (option== " 1 O'clock") {
vh=1;
vm=0;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== " 2 O'clock") {
vh=2;
vm=0;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== " 3 O'clock") {
vh=3;
vm=0;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== " 4 O'clock") {
vh=4;
vm=0;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== " 5 O'clock") {
vh=5;
vm=0;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== " 6 O'clock") {
vh=6;
vm=0;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== " 7 O'clock") {
vh=7;
vm=0;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== " 8 O'clock") {
vh=8;
vm=0;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== " 9 O'clock") {
vh=9;
vm=0;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "10 O'clock") {
vh=10;
vm=0;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "11 O'clock") {
vh=11;
vm=0;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "12 O'clock") {
vh=12;
vm=0;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "half past 12") {
vh=0;
vm=30;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "half past  1") {
vh=1;
vm=30;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "half past  2") {
vh=2;
vm=30;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "half past  3") {
vh=3;
vm=30;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "half past  4") {
vh=4;
vm=30;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "half past  5") {
vh=5;
vm=30;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "half past  6") {
vh=6;
vm=30;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "half past  7") {
vh=7;
vm=30;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "half past  8") {
vh=8;
vm=30;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "half past  9") {
vh=9;
vm=30;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "half past 10") {
vh=10;
vm=30;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "half past 11") {
vh=11;
vm=30;
vs=0;
t = vs+vm*60+vh*60*60;
_pause();
textspeech = "paused";
}
else if (option== "test angle") {
  _pause(); // to stop running
var question =  "What is the angle (in degrees) between the hour and minute hands?";
showangleinput=true;
 //alert(question);
  EJSS_INTERFACE.BoxPanel.showOkDialog(question);

/*
switch(favDrink) {
    case "a":
        text = "Excellent choice! it is correct that at a point in time 0<t<3 around t=1.5 s that the gradient on the position vs time plot is apprioximately the same, thus the same velocity.";
        alert(text);
        break;
        default:
        text = "I have never heard of that one..";
        break;
}
*/


 
}
else if (option== "show angle") {
angleshow=true;
}
else if (option== "hide angle") {
angleshow=false;
showangleinput=false;
}

if ( digitalshow==false&&digitalshow2==false){
// Width1="100%";
// Width2="0%";
  }
 
speech(option);]]></Property>
<Property name="Font"><![CDATA[font]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.ComboBox</Type>
<Name><![CDATA[models]]></Name>
<Parent><![CDATA[controlPanel]]></Parent>
<Property name="Options"><![CDATA[["quiz","random 5min"]]]></Property>
<Property name="Background"><![CDATA[K1fcorrectbackground]]></Property>
<Property name="Tooltip"><![CDATA["select suggested models"]]></Property>
<Property name="OnChange"><![CDATA[quizmaker ();
quiz=true;
//_update();
//textspeech="aaa";]]></Property>
<Property name="Font"><![CDATA[font]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.TwoStateButton</Type>
<Name><![CDATA[playPauseButton]]></Name>
<Parent><![CDATA[controlPanel]]></Parent>
<Property name="OffClick"><![CDATA[textspeech="paused";
isPaused=true;
_pause();]]></Property>
<Property name="TextOn"><![CDATA["▶Play"]]></Property>
<Property name="State"><![CDATA[_isPaused]]></Property>
<Property name="Tooltip"><![CDATA["Play/Pause"]]></Property>
<Property name="TextOff"><![CDATA["❚❚Pause"]]></Property>
<Property name="OnClick"><![CDATA[_play();
isPaused=false;
textspeech="playing";]]></Property>
<Property name="Width"><![CDATA["20vw"]]></Property>
<Property name="Font"><![CDATA[font]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Button</Type>
<Name><![CDATA[resetButton]]></Name>
<Parent><![CDATA[controlPanel]]></Parent>
<Property name="Text"><![CDATA["↻Reset"]]></Property>
<Property name="OnClick"><![CDATA[_reset();]]></Property>
<Property name="Width"><![CDATA["20vw"]]></Property>
<Property name="Font"><![CDATA[font]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Button</Type>
<Name><![CDATA[checkanswerButton]]></Name>
<Parent><![CDATA[controlPanel]]></Parent>
<Property name="Background"><![CDATA["Orange"]]></Property>
<Property name="Tooltip"><![CDATA["check answer "]]></Property>
<Property name="Text"><![CDATA[" 🤔Check"]]></Property>
<Property name="OnClick"><![CDATA[showAnswerFlag=true;
counter=1; // make sound
attempts =attempts +1;]]></Property>
<Property name="Width"><![CDATA["20vw"]]></Property>
<Property name="Font"><![CDATA[font]]></Property>
<Property name="Display"><![CDATA[quiz?"inline-block":"none"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Expanded>true</Expanded>
<Type>Elements.Panel</Type>
<Name><![CDATA[angle]]></Name>
<Parent><![CDATA[controlPanel]]></Parent>
<Property name="Visibility"><![CDATA[showangleinput]]></Property>
<Property name="Display"><![CDATA[showangleinput?"inline-block":"none"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Label</Type>
<Name><![CDATA[label4]]></Name>
<Parent><![CDATA[angle]]></Parent>
<Property name="Text"><![CDATA["ϑ ="]]></Property>
<Property name="Font"><![CDATA["normal normal 3vw "]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.ParsedField</Type>
<Name><![CDATA[angle2]]></Name>
<Parent><![CDATA[angle]]></Parent>
<Property name="Format"><![CDATA["0"]]></Property>
<Property name="Value"><![CDATA[angleinput]]></Property>
<Property name="OnChange"><![CDATA[if (Math.abs(angleinput-(((ctah-ctam)*360/(2*pi))%360).toFixed(0))<2){
 // alert(Math.abs((((ctah-ctam)*360/(2*pi))%360).toFixed(0)));
 // alert("correct 1!"); // correct for first angle
  EJSS_INTERFACE.BoxPanel.showOkDialog("correct1!");
 // alert((((ctah-ctam-2*pi)*360/(2*pi))%360).toFixed(0));
  }
 else if (Math.abs(angleinput-Math.abs(((ctah-ctam-2*pi)*360/(2*pi))%360).toFixed(0))<2){
 // alert((((ctah-ctam-2*pi)*360/(2*pi))%360).toFixed(0));
 // alert("correct 2!"); // correct for 360- first angle
 EJSS_INTERFACE.BoxPanel.showOkDialog("correct2!");
 }
  else{
  //  alert("try again");
     EJSS_INTERFACE.BoxPanel.showOkDialog("try again!");
    }]]></Property>
<Property name="Width"><![CDATA["5vw"]]></Property>
<Property name="Font"><![CDATA["normal normal 3vw "]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Label</Type>
<Name><![CDATA[label5]]></Name>
<Parent><![CDATA[angle]]></Parent>
<Property name="Text"><![CDATA["°"]]></Property>
<Property name="Font"><![CDATA["normal normal 3vw "]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Expanded>true</Expanded>
<Type>Elements.Panel</Type>
<Name><![CDATA[panel]]></Name>
<Parent><![CDATA[fullscreen]]></Parent>
<Property name="Height"><![CDATA["100%"]]></Property>
<Property name="Width"><![CDATA["100%"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Expanded>true</Expanded>
<Type>Elements.PlottingPanel</Type>
<Name><![CDATA[plottingPanel]]></Name>
<Parent><![CDATA[panel]]></Parent>
<Property name="Gutters"><![CDATA[[0,0,0,0]]]></Property>
<Property name="ShowAreaRectangle"><![CDATA[false]]></Property>
<Property name="YScalePrecision"><![CDATA[0]]></Property>
<Property name="XFixedTick"><![CDATA[0]]></Property>
<Property name="OnDoubleClick"><![CDATA[_pause();
toggleFullScreen();]]></Property>
<Property name="AxisXShow"><![CDATA[false]]></Property>
<Property name="OnResize"><![CDATA[
_view._update();
]]></Property>
<Property name="YFixedTick"><![CDATA[0]]></Property>
<Property name="TRMessage"><![CDATA[""+K1fcorrect]]></Property>
<Property name="XTickStep"><![CDATA[1]]></Property>
<Property name="YTickStep"><![CDATA[1]]></Property>
<Property name="XAutoTicks"><![CDATA[false]]></Property>
<Property name="Height"><![CDATA[%changeOrientation()%]]></Property>
<Property name="OnOrientationChange"><![CDATA[
_view._update();
]]></Property>
<Property name="GridXShow"><![CDATA[false]]></Property>
<Property name="Width"><![CDATA[Width1]]></Property>
<Property name="TLMessage"><![CDATA[%textspeech%]]></Property>
<Property name="Background"><![CDATA["Black"]]></Property>
<Property name="Enabled"><![CDATA[true]]></Property>
<Property name="SquareAspect"><![CDATA[true]]></Property>
<Property name="MaximumY"><![CDATA[ymax]]></Property>
<Property name="MaximumX"><![CDATA[xmax]]></Property>
<Property name="GridYShow"><![CDATA[false]]></Property>
<Property name="YAutoTicks"><![CDATA[false]]></Property>
<Property name="MinimumX"><![CDATA[xmin]]></Property>
<Property name="MinimumY"><![CDATA[ymin]]></Property>
<Property name="AxisYShow"><![CDATA[false]]></Property>
<Property name="AutoScaleY"><![CDATA[true]]></Property>
<Property name="AutoScaleX"><![CDATA[true]]></Property>
<Property name="Visibility"><![CDATA[world===true]]></Property>
<Property name="XScalePrecision"><![CDATA[0]]></Property>
<Property name="BRMessage"><![CDATA["score="+score+"/"+attempts+"\n"+twofourhourformat]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Shape2D</Type>
<Name><![CDATA[stopwatchoutercircle]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="FillColor"><![CDATA["LIGHTGRAY"]]></Property>
<Property name="SizeX"><![CDATA[D*1.05]]></Property>
<Property name="ShapeType"><![CDATA["ELLIPSE"]]></Property>
<Property name="X"><![CDATA[zero]]></Property>
<Property name="Y"><![CDATA[zero]]></Property>
<Property name="SizeY"><![CDATA[D*1.05]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Shape2D</Type>
<Name><![CDATA[stopwatchoutercircle22]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="FillColor"><![CDATA["url(#mygrandient)"]]></Property>
<Property name="SizeX"><![CDATA[D]]></Property>
<Property name="ShapeType"><![CDATA["ELLIPSE"]]></Property>
<Property name="X"><![CDATA[zero]]></Property>
<Property name="Y"><![CDATA[zero]]></Property>
<Property name="SizeY"><![CDATA[D]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Expanded>false</Expanded>
<Type>Elements.Group2D</Type>
<Name><![CDATA[group3]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="Visibility"><![CDATA[wordhintshow]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[top]]></Name>
<Parent><![CDATA[group3]]></Parent>
<Property name="FillColor"><![CDATA["Magenta"]]></Property>
<Property name="X"><![CDATA[0]]></Property>
<Property name="Y"><![CDATA[4]]></Property>
<Property name="Text"><![CDATA[" Hr hand + O'clock"]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[bottom]]></Name>
<Parent><![CDATA[group3]]></Parent>
<Property name="FillColor"><![CDATA["Magenta"]]></Property>
<Property name="X"><![CDATA[0]]></Property>
<Property name="Y"><![CDATA[-4]]></Property>
<Property name="Text"><![CDATA[" half past Hr hand"]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[right]]></Name>
<Parent><![CDATA[group3]]></Parent>
<Property name="FillColor"><![CDATA["Magenta"]]></Property>
<Property name="X"><![CDATA[4]]></Property>
<Property name="Y"><![CDATA[0.5]]></Property>
<Property name="Text"><![CDATA[" quarter past Hr hand"]]></Property>
<Property name="Visibility"><![CDATA[false]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[left]]></Name>
<Parent><![CDATA[group3]]></Parent>
<Property name="FillColor"><![CDATA["Magenta"]]></Property>
<Property name="RelativePosition"><![CDATA["NORTH"]]></Property>
<Property name="X"><![CDATA[-4]]></Property>
<Property name="Y"><![CDATA[-0.5]]></Property>
<Property name="Text"><![CDATA[" quarter to (Hr hand+1)"]]></Property>
<Property name="Visibility"><![CDATA[false]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.ArrowSet2D</Type>
<Name><![CDATA[arrowSet]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="NumberOfElements"><![CDATA[n2]]></Property>
<Property name="MarkEnd"><![CDATA["NONE"]]></Property>
<Property name="SizeX"><![CDATA[dxs]]></Property>
<Property name="X"><![CDATA[xs]]></Property>
<Property name="LineColor"><![CDATA[%coloritick%]]></Property>
<Property name="Y"><![CDATA[ys]]></Property>
<Property name="SizeY"><![CDATA[dys]]></Property>
<Property name="LineWidth"><![CDATA[widthitick]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.TextSet2D</Type>
<Name><![CDATA[textSet510152060]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="NumberOfElements"><![CDATA[n]]></Property>
<Property name="SizeX"><![CDATA[sizex]]></Property>
<Property name="X"><![CDATA[x]]></Property>
<Property name="Y"><![CDATA[y]]></Property>
<Property name="Text"><![CDATA[%msg60%]]></Property>
<Property name="Visibility"><![CDATA[minfaceshow]]></Property>
<Property name="PixelSize"><![CDATA[false]]></Property>
<Property name="SizeY"><![CDATA[sizex]]></Property>
<Property name="Font"><![CDATA["normal normal 2vmax "]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.TextSet2D</Type>
<Name><![CDATA[textSet2]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="NumberOfElements"><![CDATA[n]]></Property>
<Property name="X"><![CDATA[x1324hr]]></Property>
<Property name="Y"><![CDATA[y1324hr]]></Property>
<Property name="Text"><![CDATA[%msg1324hr%]]></Property>
<Property name="Visibility"><![CDATA[twofourhourformatb]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="Font"><![CDATA["normal normal 1vmax "]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.ShapeSet2D</Type>
<Name><![CDATA[shapeSet]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="NumberOfElements"><![CDATA[n]]></Property>
<Property name="SizeX"><![CDATA[15]]></Property>
<Property name="ShapeType"><![CDATA["WHEEL"]]></Property>
<Property name="X"><![CDATA[x]]></Property>
<Property name="Y"><![CDATA[y]]></Property>
<Property name="Visibility"><![CDATA[false]]></Property>
<Property name="SizeY"><![CDATA[15]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.TextSet2D</Type>
<Name><![CDATA[textSet123456789]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="NumberOfElements"><![CDATA[n]]></Property>
<Property name="X"><![CDATA[x]]></Property>
<Property name="Y"><![CDATA[y]]></Property>
<Property name="Text"><![CDATA[%msg%]]></Property>
<Property name="Visibility"><![CDATA[!minfaceshow]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="Font"><![CDATA["normal normal 2vmax "]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Expanded>false</Expanded>
<Type>Elements.Group2D</Type>
<Name><![CDATA[teaching]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="Visibility"><![CDATA[teachingmode]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Shape2D</Type>
<Name><![CDATA[second]]></Name>
<Parent><![CDATA[teaching]]></Parent>
<Property name="FillColor"><![CDATA["rgba(0,0,0,0.0)"]]></Property>
<Property name="SizeX"><![CDATA[20]]></Property>
<Property name="ShapeType"><![CDATA["RECTANGLE"]]></Property>
<Property name="X"><![CDATA[sx]]></Property>
<Property name="Y"><![CDATA[sy]]></Property>
<Property name="Visibility"><![CDATA[secondhandshow]]></Property>
<Property name="SizeY"><![CDATA[20]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
<Property name="OnDrag"><![CDATA[//three lines to restrict drag to circle path
ctas = cta = Math.atan2(sx,sy);
sx=3.75*Math.sin(ctas); //lookang cannot use Rs variable
sy=3.75*Math.cos(ctas);



//vs = Math.round(60/pi2*Math.atan2(sx,sy));
vs = 60/pi2*Math.atan2(sx,sy); //assign coordinates sx sy to vs
if (vs <0) { // 31 to 59 sec are return back as -29 and -1
  vs = vs+60; // clever way to assign 31 to 59 sec
  }
  //drag increase when vs>60
  if(Math.abs(vs-vss)>40){// why 40? strange
 if(vss>30.){
   vm=vm+1;// looks correct
// if(vss<30.){vm=vm++; // ++ des not work
test = -1;
}
else if(vss<30.){
//  vm--; //  taken out
  vm= vm-1;
test =1;
}
}
//assign t back with new values of vs
t = vs+vm*60+vh*60*60;

//decompose t into the 3 arms
//vh = (t/3600);
//vm = ((t%(3600))/60);
//vs = ((t%(3600))%60);

//vh = (t/3600);
//vm = ((t%(3600))/60);
//vs = ((t%(3600))%60);
// make arms move
//sx = Rs*Math.sin(vs/60*pi2);
//sy = Rs*Math.cos(vs/60*pi2);
mx=Rm*Math.sin(vm/60*pi2);
my=Rm*Math.cos(vm/60*pi2);
hx=Rh*Math.sin(vh/12*pi2);
hy=Rh*Math.cos(vh/12*pi2);

//store value for drag to work
vss = vs;
]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Arrow2D</Type>
<Name><![CDATA[sechand]]></Name>
<Parent><![CDATA[teaching]]></Parent>
<Property name="MarkEnd"><![CDATA["ANGLE"]]></Property>
<Property name="SizeX"><![CDATA[sx]]></Property>
<Property name="X"><![CDATA[zero]]></Property>
<Property name="LineColor"><![CDATA["Magenta"]]></Property>
<Property name="Y"><![CDATA[zero]]></Property>
<Property name="Visibility"><![CDATA[secondhandshow]]></Property>
<Property name="SizeY"><![CDATA[sy]]></Property>
<Property name="LineWidth"><![CDATA[5]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Arrow2D</Type>
<Name><![CDATA[minhand]]></Name>
<Parent><![CDATA[teaching]]></Parent>
<Property name="MarkEnd"><![CDATA["TRIANGLE"]]></Property>
<Property name="SizeX"><![CDATA[mx]]></Property>
<Property name="X"><![CDATA[zero]]></Property>
<Property name="LineColor"><![CDATA["Red"]]></Property>
<Property name="Y"><![CDATA[zero]]></Property>
<Property name="Visibility"><![CDATA[minutehandshow]]></Property>
<Property name="SizeY"><![CDATA[my]]></Property>
<Property name="LineWidth"><![CDATA[10]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Shape2D</Type>
<Name><![CDATA[min]]></Name>
<Parent><![CDATA[teaching]]></Parent>
<Property name="FillColor"><![CDATA["rgba(0,0,0,0.0)"]]></Property>
<Property name="Sensitivity"><![CDATA[0]]></Property>
<Property name="SizeX"><![CDATA[20]]></Property>
<Property name="ShapeType"><![CDATA["RECTANGLE"]]></Property>
<Property name="X"><![CDATA[mx]]></Property>
<Property name="Y"><![CDATA[my]]></Property>
<Property name="Visibility"><![CDATA[minutehandshow]]></Property>
<Property name="SizeY"><![CDATA[20]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
<Property name="OnDrag"><![CDATA[//three lines to restrict drag to circle path
//ctam = Math.atan2(mx,my);
// implement discrete
ctam = Math.round(Math.atan2(mx,my)/(2*pi)*60)/60*(2*pi);

mx=3.25*Math.sin(ctam); //lookang cannot use Rs variable
my=3.25*Math.cos(ctam);



//vs = Math.round(60/pi2*Math.atan2(sx,sy));
vm = 60/pi2*Math.atan2(mx,my); //assign coordinates sx sy to vs
if (vm <0) { // 31 to 59 sec are return back as -29 and -1
  vm = vm+60; // clever way to assign 31 to 59 sec
  }
  //drag increase when vs>60
  if(Math.abs(vm-vms)>40){// why 40? strange
 if(vms>30.){
   vh=vh+1;// looks correct
// if(vss<30.){vm=vm++; // ++ des not work
test = -1;
}
else if(vms<30.){
//  vm--; //  taken out
  vh= vh-1;
test =1;
}
}
//assign t back with new values of vs
//t = vs+vm*60+vh*60*60;
t = vm*60+vh*60*60;
//decompose t into the 3 arms
//vh = (t/3600);
//vm = ((t%(3600))/60);
//vs = ((t%(3600))%60);
// make arms move
//sx = Rs*Math.sin(vs/60*pi2);
//sy = Rs*Math.cos(vs/60*pi2);
//mx=Rm*Math.sin(vm/60*pi2);
//my=Rm*Math.cos(vm/60*pi2);
hx=Rh*Math.sin(vh/12*pi2);
hy=Rh*Math.cos(vh/12*pi2);

//store value for drag to work
vms = vm;
]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Arrow2D</Type>
<Name><![CDATA[hourhand]]></Name>
<Parent><![CDATA[teaching]]></Parent>
<Property name="MarkEnd"><![CDATA["ANGLE"]]></Property>
<Property name="SizeX"><![CDATA[hx]]></Property>
<Property name="MarkEndHeight"><![CDATA[50]]></Property>
<Property name="X"><![CDATA[zero]]></Property>
<Property name="LineColor"><![CDATA["Blue"]]></Property>
<Property name="Y"><![CDATA[zero]]></Property>
<Property name="SizeY"><![CDATA[hy]]></Property>
<Property name="MarkEndWidth"><![CDATA[50]]></Property>
<Property name="LineWidth"><![CDATA[15]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Shape2D</Type>
<Name><![CDATA[hr]]></Name>
<Parent><![CDATA[teaching]]></Parent>
<Property name="FillColor"><![CDATA["rgba(0,0,0,0.0)"]]></Property>
<Property name="Sensitivity"><![CDATA[0]]></Property>
<Property name="SizeX"><![CDATA[20]]></Property>
<Property name="ShapeType"><![CDATA["RECTANGLE"]]></Property>
<Property name="X"><![CDATA[hx]]></Property>
<Property name="Y"><![CDATA[hy]]></Property>
<Property name="SizeY"><![CDATA[20]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
<Property name="OnDrag"><![CDATA[//three lines to restrict drag to circle path
ctah = Math.atan2(hx,hy);
hx=2.5*Math.sin(ctah); //lookang cannot use Rs variable
hy=2.5*Math.cos(ctah);



//vs = Math.round(60/pi2*Math.atan2(sx,sy));
vh = 12/pi2*Math.atan2(hx,hy); //assign coordinates sx sy to vs
if (vh <0) { // 7 to 11 sec are return back as -29 and -1
  vh = vh+12; // clever way to assign 7 to 11 hr from -1 to -5
 }
//assign t back with new values of vs
//t = vs+vm*60+vh*60*60;
t = vh*60*60;

//decompose t into the 3 arms
//vh = (t/3600);
//vm = ((t%(3600))/60);
//vs = ((t%(3600))%60);
// make arms move
//sx = Rs*Math.sin(vs/60*pi2);
//sy = Rs*Math.cos(vs/60*pi2);
//mx=Rm*Math.sin(vm/60*pi2);
//my=Rm*Math.cos(vm/60*pi2);
//hx=Rh*Math.sin(vh/12*pi2);
//hy=Rh*Math.cos(vh/12*pi2);

//store value for drag to work
//vhs = vh;
]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Expanded>true</Expanded>
<Type>Elements.Group2D</Type>
<Name><![CDATA[nonteaching2]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="Visibility"><![CDATA[!teachingmode]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Shape2D</Type>
<Name><![CDATA[second2]]></Name>
<Parent><![CDATA[nonteaching2]]></Parent>
<Property name="FillColor"><![CDATA["rgba(0,0,0,0.0)"]]></Property>
<Property name="SizeX"><![CDATA[20]]></Property>
<Property name="ShapeType"><![CDATA["RECTANGLE"]]></Property>
<Property name="X"><![CDATA[sx]]></Property>
<Property name="Y"><![CDATA[sy]]></Property>
<Property name="Visibility"><![CDATA[false]]></Property>
<Property name="SizeY"><![CDATA[20]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
<Property name="OnDrag"><![CDATA[//notworking correctly]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Arrow2D</Type>
<Name><![CDATA[sechand22]]></Name>
<Parent><![CDATA[nonteaching2]]></Parent>
<Property name="MarkEnd"><![CDATA["ANGLE"]]></Property>
<Property name="SizeX"><![CDATA[sx]]></Property>
<Property name="X"><![CDATA[zero]]></Property>
<Property name="LineColor"><![CDATA["Magenta"]]></Property>
<Property name="Y"><![CDATA[zero]]></Property>
<Property name="Visibility"><![CDATA[secondhandshow]]></Property>
<Property name="SizeY"><![CDATA[sy]]></Property>
<Property name="LineWidth"><![CDATA[5]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Arrow2D</Type>
<Name><![CDATA[minhand2]]></Name>
<Parent><![CDATA[nonteaching2]]></Parent>
<Property name="MarkEnd"><![CDATA["TRIANGLE"]]></Property>
<Property name="SizeX"><![CDATA[mx]]></Property>
<Property name="X"><![CDATA[zero]]></Property>
<Property name="LineColor"><![CDATA["Red"]]></Property>
<Property name="Y"><![CDATA[zero]]></Property>
<Property name="Visibility"><![CDATA[minutehandshow]]></Property>
<Property name="SizeY"><![CDATA[my]]></Property>
<Property name="LineWidth"><![CDATA[10]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Arrow2D</Type>
<Name><![CDATA[hourhand2]]></Name>
<Parent><![CDATA[nonteaching2]]></Parent>
<Property name="MarkEnd"><![CDATA["ANGLE"]]></Property>
<Property name="SizeX"><![CDATA[hx]]></Property>
<Property name="MarkEndHeight"><![CDATA[50]]></Property>
<Property name="X"><![CDATA[zero]]></Property>
<Property name="LineColor"><![CDATA["Blue"]]></Property>
<Property name="Y"><![CDATA[zero]]></Property>
<Property name="SizeY"><![CDATA[hy]]></Property>
<Property name="MarkEndWidth"><![CDATA[50]]></Property>
<Property name="LineWidth"><![CDATA[15]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Shape2D</Type>
<Name><![CDATA[min32]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="FillColor"><![CDATA["rgba(0,0,0,0.0)"]]></Property>
<Property name="SizeX"><![CDATA[20]]></Property>
<Property name="ShapeType"><![CDATA["RECTANGLE"]]></Property>
<Property name="X"><![CDATA[mx]]></Property>
<Property name="LineColor"><![CDATA["Magenta"]]></Property>
<Property name="OnEnter"><![CDATA[_pause(); //  need to put here for lead time to prevent lagging experience]]></Property>
<Property name="Y"><![CDATA[my]]></Property>
<Property name="Visibility"><![CDATA[minutehandshow&&!teachingmode]]></Property>
<Property name="SizeY"><![CDATA[20]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
<Property name="OnDrag"><![CDATA[
ctam = Math.round( Math.atan2(_info.point[0],_info.point[1]) /(2*pi)*60)/60*(2*pi);

var mxtest = Math.sin(ctam); //new position angles
var mytest =Math.cos(ctam);

 vmtest = 60/pi2*Math.atan2(mxtest,mytest); //resolve to minute value based on mouse
if (vmtest <0) { // 31 to 59 sec are return back as -29 and -1
  vmtest = vmtest+60; // clever way to assign 31 to 59 sec
 
 }
else if (vmtest>0) { //about normal 1 to 29 mins
  
}




  if ((vmtest-vm)<-40){ //postive direction example 1 - 59
    detect=1;

  }
 else if ((vmtest-vm)>40){ //negative direction example 59 - 1
    detect=-1;

  }
  else {
    detect=0;
  
    }
    
    if (t<0){
      t= t+24*60*60; //fix bug of hour hand rotate wildly
      }
      else {
 
    t = (Math.floor(t/3600)*3600+ detect*3600+ vmtest*60); // assign value of t based on vmtest
    }
]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Shape2D</Type>
<Name><![CDATA[hr2]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="FillColor"><![CDATA["rgba(0,0,0,0.0)"]]></Property>
<Property name="ShapeType"><![CDATA["RECTANGLE"]]></Property>
<Property name="OnDrag"><![CDATA[//three lines to restrict drag to circle path
//_info.point



ctah = Math.atan2(_info.point[0],_info.point[1]);
var hxtest = 2.5*Math.sin(ctah); //new position angles
var hytest =2.5*Math.cos(ctah);

//ctah = Math.atan2(hx,hy);
//hx=2.5*Math.sin(ctah); //lookang cannot use Rs variable
//hy=2.5*Math.cos(ctah);

var vh24hourformat = vh;

//vs = Math.round(60/pi2*Math.atan2(sx,sy));
//vh = 12/pi2*Math.atan2(hx,hy); //assign coordinates sx sy to vs
 vhtest = 12/pi2*Math.atan2(hxtest,hytest); //resolve to minute value based on mouse


//am
if (vhtest <0&&vh24hourformat<12) { // 31 to 59 sec are return back as -29 and -1
  vhtest = vhtest+12; // clever way to assign 31 to 59 sec
  test=2
  }
else if (vhtest >0&&vh24hourformat<12) { // 31 to 59 sec are return back as -29 and -1
  vhtest = vhtest; // clever way to assign 31 to 59 sec
  test=1
  }
  
//pm
else if (vhtest >0&&vh24hourformat>12) { // 31 to 59 sec are return back as -29 and -1
  vhtest = vhtest+12; // clever way to assign 31 to 59 sec
  test=3
  }
else if (vhtest <0&&vh24hourformat>17) { // cannot 18 didnt hit quadrant correctly
  vhtest = vhtest+12+12; // clever way to assign 31 to 59 sec
  test =4
  }

  
  
 console.log(("vh "+vh )) 
 console.log(("difference= "+(vhtest-vh) ))
 
 // 
 var diff = 0.01
 var jumpdiff = 11
  // cross to the right 1200
  //if ((vhtest-vh)>jumpdiff&&Math.ceil(vh)==0){ //postive direction example pass 12 to the left
  if ((vhtest-vh)<-jumpdiff&&Math.round(vh)==12){ //postive direction example pass 12 to the left
   detecth=1;
 t = vhtest*60*60+ detecth*3600*12
 test1 =1
 //alert(test)
  }
   // cross to the left 0000
 else if ((vhtest-vh)>jumpdiff&&Math.round(vh)==0){ //postive direction example pass 12 to the left
    detecth=1;
 t = vhtest*60*60+ detecth*3600*12
 test1 =2
 // alert(test)
  }
  //cross left 1200
 //else if ((vhtest-vh)>diff&&Math.round(vh)==24){ //negative direction example pass 12 to the right
 //   detecth=-1;
//t = vhtest*60*60+ detecth*3600*24
 //test1 =3
 // alert(test)
 // }
  // cross to the right 2359
  else if ((vhtest-vh)<-jumpdiff&&Math.round(vh)==24){ //negative direction example pass 12 to the right
    detecth=-1;
t = vhtest*60*60+ detecth*3600*24
 test1 =4
 // alert(test)
  }
  else {
    detecth=0;
     test1 =0
  t = vhtest*60*60
    }
console.log(("test1= "+test1 ))
//assign t back with new values of vs
//t = vs+vm*60+vh*60*60;
//if (vh24hourformat > 12){ // for pm
 // t = vh*60*60+ 12*60*60 //+ detecth*3600*12;

//}
//else {  // for am
 // t = vhtest*60*60 + detecth*3600*12
//  }


//decompose t into the 3 arms
//vh = (t/3600);
//vm = ((t%(3600))/60);
//vs = ((t%(3600))%60);
// make arms move
//sx = Rs*Math.sin(vs/60*pi2);
//sy = Rs*Math.cos(vs/60*pi2);
//mx=Rm*Math.sin(vm/60*pi2);
//my=Rm*Math.cos(vm/60*pi2);
//hx=Rh*Math.sin(vh/12*pi2);
//hy=Rh*Math.cos(vh/12*pi2);

//store value for drag to work
vhs = vh;
]]></Property>
<Property name="Sensitivity"><![CDATA[0]]></Property>
<Property name="SizeX"><![CDATA[20]]></Property>
<Property name="X"><![CDATA[hx]]></Property>
<Property name="LineColor"><![CDATA["Magenta"]]></Property>
<Property name="OnEnter"><![CDATA[_pause(); // must pause to avoid bugs]]></Property>
<Property name="Y"><![CDATA[hy]]></Property>
<Property name="Visibility"><![CDATA[!teachingmode]]></Property>
<Property name="SizeY"><![CDATA[20]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Expanded>false</Expanded>
<Type>Elements.Group2D</Type>
<Name><![CDATA[group2]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="X"><![CDATA[wordsx]]></Property>
<Property name="Y"><![CDATA[wordsy]]></Property>
<Property name="Visibility"><![CDATA[wordsshow]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[words]]></Name>
<Parent><![CDATA[group2]]></Parent>
<Property name="OnRelease"><![CDATA[_pause();
speech(words);]]></Property>
<Property name="FillColor"><![CDATA["Cyan"]]></Property>
<Property name="Sensitivity"><![CDATA[50]]></Property>
<Property name="MovesGroup"><![CDATA[true]]></Property>
<Property name="Measured"><![CDATA[true]]></Property>
<Property name="X"><![CDATA[0]]></Property>
<Property name="Y"><![CDATA[0]]></Property>
<Property name="Text"><![CDATA[%words%]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Expanded>false</Expanded>
<Type>Elements.Group2D</Type>
<Name><![CDATA[group]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="X"><![CDATA[digitalgroupx]]></Property>
<Property name="Y"><![CDATA[digitalgroupy]]></Property>
<Property name="Visibility"><![CDATA[false]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Shape2D</Type>
<Name><![CDATA[shape]]></Name>
<Parent><![CDATA[group]]></Parent>
<Property name="FillColor"><![CDATA["rgba(0,255,0,0.5)"]]></Property>
<Property name="MovesGroup"><![CDATA[true]]></Property>
<Property name="SizeX"><![CDATA[400]]></Property>
<Property name="RelativePosition"><![CDATA["CENTERED"]]></Property>
<Property name="ShapeType"><![CDATA["ROUND_RECTANGLE"]]></Property>
<Property name="X"><![CDATA[digitalx]]></Property>
<Property name="Y"><![CDATA[digitaly]]></Property>
<Property name="Visibility"><![CDATA[digitalshow]]></Property>
<Property name="SizeY"><![CDATA[100]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[hrmmss]]></Name>
<Parent><![CDATA[group]]></Parent>
<Property name="RelativePosition"><![CDATA["WEST"]]></Property>
<Property name="X"><![CDATA[sizex]]></Property>
<Property name="Y"><![CDATA[sizey*2]]></Property>
<Property name="Text"><![CDATA["hr--mm--ss"]]></Property>
<Property name="Visibility"><![CDATA[digitalshow]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="Font"><![CDATA["normal normal 20px digital-7"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[digital]]></Name>
<Parent><![CDATA[group]]></Parent>
<Property name="RelativePosition"><![CDATA["WEST"]]></Property>
<Property name="X"><![CDATA[sizex]]></Property>
<Property name="Y"><![CDATA[sizey]]></Property>
<Property name="Text"><![CDATA[pad(Math.floor(vh%24))+" : "+pad(Math.floor(vm))+" : "+pad(Math.floor(vs))+ ""]]></Property>
<Property name="Visibility"><![CDATA[digitalshow]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
<Property name="Font"><![CDATA["normal normal 20px digital-7"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Expanded>true</Expanded>
<Type>Elements.Group2D</Type>
<Name><![CDATA[digitalAMPM]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="X"><![CDATA[digitalAMPMx]]></Property>
<Property name="Y"><![CDATA[digitalAMPMy]]></Property>
<Property name="Visibility"><![CDATA[digitalshow2]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Shape2D</Type>
<Name><![CDATA[shape2]]></Name>
<Parent><![CDATA[digitalAMPM]]></Parent>
<Property name="OnRelease"><![CDATA[_pause();
speech(ampmtext);]]></Property>
<Property name="FillColor"><![CDATA["Cyan"]]></Property>
<Property name="Sensitivity"><![CDATA[0]]></Property>
<Property name="MovesGroup"><![CDATA[true]]></Property>
<Property name="SizeX"><![CDATA[sizex*10]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="ShapeType"><![CDATA["ROUND_RECTANGLE"]]></Property>
<Property name="Measured"><![CDATA[true]]></Property>
<Property name="X"><![CDATA[0]]></Property>
<Property name="Y"><![CDATA[-sizey2]]></Property>
<Property name="SizeY"><![CDATA[sizey*3]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[hrmmss2]]></Name>
<Parent><![CDATA[digitalAMPM]]></Parent>
<Property name="RelativePosition"><![CDATA["CENTERED"]]></Property>
<Property name="Y"><![CDATA[sizey2]]></Property>
<Property name="Text"><![CDATA["HH--MM--SS___"]]></Property>
<Property name="Visibility"><![CDATA[false]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="Font"><![CDATA["normal normal 30px digital-7"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[HH]]></Name>
<Parent><![CDATA[digitalAMPM]]></Parent>
<Property name="FillColor"><![CDATA["Blue"]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="X"><![CDATA[-sizex*2]]></Property>
<Property name="Y"><![CDATA[sizey]]></Property>
<Property name="Text"><![CDATA["HH :"]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="SizeY"><![CDATA[sizey]]></Property>
<Property name="Font"><![CDATA["normal normal 2vw digital-7"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[MM]]></Name>
<Parent><![CDATA[digitalAMPM]]></Parent>
<Property name="FillColor"><![CDATA["Magenta"]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="X"><![CDATA[sizex2]]></Property>
<Property name="Y"><![CDATA[sizey]]></Property>
<Property name="Text"><![CDATA["MM :"]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="SizeY"><![CDATA[sizey]]></Property>
<Property name="Font"><![CDATA["normal normal 2vw digital-7"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[SS]]></Name>
<Parent><![CDATA[digitalAMPM]]></Parent>
<Property name="FillColor"><![CDATA["Red"]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="X"><![CDATA[sizex*2]]></Property>
<Property name="Y"><![CDATA[sizey]]></Property>
<Property name="Text"><![CDATA["SS"]]></Property>
<Property name="Visibility"><![CDATA[secondhandshow]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="SizeY"><![CDATA[sizey]]></Property>
<Property name="Font"><![CDATA["normal normal 2vw digital-7"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[digital22]]></Name>
<Parent><![CDATA[digitalAMPM]]></Parent>
<Property name="RelativePosition"><![CDATA["CENTERED"]]></Property>
<Property name="X"><![CDATA[0]]></Property>
<Property name="Y"><![CDATA[-sizey*2]]></Property>
<Property name="Text"><![CDATA[%ampmtext%]]></Property>
<Property name="Visibility"><![CDATA[false]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
<Property name="Font"><![CDATA["normal normal 40px digital-7"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[HH00122]]></Name>
<Parent><![CDATA[digitalAMPM]]></Parent>
<Property name="FillColor"><![CDATA["rgba(50,50,255,1.0)"]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="X"><![CDATA[-sizex*2]]></Property>
<Property name="LineColor"><![CDATA["White"]]></Property>
<Property name="Y"><![CDATA[0]]></Property>
<Property name="Text"><![CDATA["12  :"]]></Property>
<Property name="Visibility"><![CDATA[vh12text%12<1]]></Property>
<Property name="DrawLines"><![CDATA[true]]></Property>
<Property name="LineWidth"><![CDATA[3]]></Property>
<Property name="DrawFill"><![CDATA[true]]></Property>
<Property name="Font"><![CDATA["normal normal 2vw digital-7"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[HH0012]]></Name>
<Parent><![CDATA[digitalAMPM]]></Parent>
<Property name="FillColor"><![CDATA["rgba(50,50,255,1.0)"]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="X"><![CDATA[-sizex*2]]></Property>
<Property name="LineColor"><![CDATA["White"]]></Property>
<Property name="Y"><![CDATA[0]]></Property>
<Property name="Text"><![CDATA[pad(Math.floor(vh12text%12))+"  :"]]></Property>
<Property name="Visibility"><![CDATA[vh12text%12>1]]></Property>
<Property name="DrawLines"><![CDATA[true]]></Property>
<Property name="LineWidth"><![CDATA[3]]></Property>
<Property name="DrawFill"><![CDATA[true]]></Property>
<Property name="Font"><![CDATA["normal normal 2vw digital-7"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[MM2]]></Name>
<Parent><![CDATA[digitalAMPM]]></Parent>
<Property name="FillColor"><![CDATA["Magenta"]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="X"><![CDATA[sizex2]]></Property>
<Property name="Y"><![CDATA[0]]></Property>
<Property name="Text"><![CDATA[pad(Math.floor(vm))+" :"]]></Property>
<Property name="Font"><![CDATA["normal normal 2vw digital-7"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[SS22]]></Name>
<Parent><![CDATA[digitalAMPM]]></Parent>
<Property name="FillColor"><![CDATA["Red"]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="X"><![CDATA[sizex*2]]></Property>
<Property name="Y"><![CDATA[0]]></Property>
<Property name="Text"><![CDATA[pad(Math.floor(vs))+""]]></Property>
<Property name="Visibility"><![CDATA[secondhandshow]]></Property>
<Property name="Font"><![CDATA["normal normal 2vw digital-7"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[AMPM]]></Name>
<Parent><![CDATA[digitalAMPM]]></Parent>
<Property name="FillColor"><![CDATA["Orange"]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="X"><![CDATA[sizex*4]]></Property>
<Property name="Y"><![CDATA[0]]></Property>
<Property name="Text"><![CDATA["A.M."]]></Property>
<Property name="Visibility"><![CDATA[vh%24<12]]></Property>
<Property name="Font"><![CDATA["normal normal 2vw digital-7"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[AMPM2]]></Name>
<Parent><![CDATA[digitalAMPM]]></Parent>
<Property name="FillColor"><![CDATA["Orange"]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="X"><![CDATA[sizex*4]]></Property>
<Property name="Y"><![CDATA[0]]></Property>
<Property name="Text"><![CDATA["P.M."]]></Property>
<Property name="Visibility"><![CDATA[vh%24 >=12]]></Property>
<Property name="Font"><![CDATA["normal normal 2vw digital-7"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Shape2D</Type>
<Name><![CDATA[drag]]></Name>
<Parent><![CDATA[digitalAMPM]]></Parent>
<Property name="OnRelease"><![CDATA[_pause();
speech(ampmtext);]]></Property>
<Property name="FillColor"><![CDATA["rgba(0,0,0,0.0)"]]></Property>
<Property name="Sensitivity"><![CDATA[0]]></Property>
<Property name="MovesGroup"><![CDATA[true]]></Property>
<Property name="SizeX"><![CDATA[sizex*10]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="ShapeType"><![CDATA["ROUND_RECTANGLE"]]></Property>
<Property name="Measured"><![CDATA[true]]></Property>
<Property name="X"><![CDATA[0]]></Property>
<Property name="Y"><![CDATA[-sizey2]]></Property>
<Property name="SizeY"><![CDATA[sizey*3]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Polygon2D</Type>
<Name><![CDATA[angkeA32]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="PointsY"><![CDATA[[0,0, Math.sin(ctahminusctam/16),Math.sin(ctahminusctam/8), Math.sin(ctahminusctam*3/16),Math.sin(ctahminusctam/4), Math.sin(ctahminusctam*5/16),Math.sin(ctahminusctam*3/8), Math.sin(ctahminusctam*7/16),Math.sin(ctahminusctam/2), Math.sin(ctahminusctam*9/16),Math.sin(ctahminusctam*5/8), Math.sin(ctahminusctam*11/16),Math.sin(ctahminusctam*3/4), Math.sin(ctahminusctam*13/16),Math.sin(ctahminusctam*7/8), Math.sin(ctahminusctam*15/16),Math.sin(ctahminusctam)]]]></Property>
<Property name="FillColor"><![CDATA["rgba(200,100,100,0.5)"]]></Property>
<Property name="PointsX"><![CDATA[[0,1, Math.cos(ctahminusctam/16),Math.cos(ctahminusctam/8), Math.cos(ctahminusctam*3/16),Math.cos(ctahminusctam/4), Math.cos(ctahminusctam*5/16),Math.cos(ctahminusctam*3/8), Math.cos(ctahminusctam*7/16),Math.cos(ctahminusctam/2), Math.cos(ctahminusctam*9/16),Math.cos(ctahminusctam*5/8), Math.cos(ctahminusctam*11/16),Math.cos(ctahminusctam*3/4), Math.cos(ctahminusctam*13/16),Math.cos(ctahminusctam*7/8), Math.cos(ctahminusctam*15/16),Math.cos(ctahminusctam)] ]]></Property>
<Property name="Transformation"><![CDATA[pi/2-ctah]]></Property>
<Property name="SizeX"><![CDATA[40]]></Property>
<Property name="Visibility"><![CDATA[angleshow]]></Property>
<Property name="SizeY"><![CDATA[40]]></Property>
<Property name="PixelSize"><![CDATA[true]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Expanded>false</Expanded>
<Type>Elements.Group2D</Type>
<Name><![CDATA[nightdayshow]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="Visibility"><![CDATA[daynightshow]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Image2D</Type>
<Name><![CDATA[morningsunshine]]></Name>
<Parent><![CDATA[nightdayshow]]></Parent>
<Property name="SizeX"><![CDATA[range/4]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="X"><![CDATA[0]]></Property>
<Property name="Y"><![CDATA[0]]></Property>
<Property name="ImageUrl"><![CDATA["./Clock/320px-Morning_Sun_Rays_(5077976668).jpg"]]></Property>
<Property name="Visibility"><![CDATA[vh>=6&&vh<7]]></Property>
<Property name="SizeY"><![CDATA[range/4]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Image2D</Type>
<Name><![CDATA[teeth]]></Name>
<Parent><![CDATA[nightdayshow]]></Parent>
<Property name="SizeX"><![CDATA[range/4]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="X"><![CDATA[0]]></Property>
<Property name="Y"><![CDATA[0]]></Property>
<Property name="ImageUrl"><![CDATA["./Clock/320px-Woman_brushing_teeth.jpg"]]></Property>
<Property name="Visibility"><![CDATA[vh>=7&&vh<8]]></Property>
<Property name="SizeY"><![CDATA[range/4]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Image2D</Type>
<Name><![CDATA[breakfast]]></Name>
<Parent><![CDATA[nightdayshow]]></Parent>
<Property name="SizeX"><![CDATA[range/4]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="X"><![CDATA[0]]></Property>
<Property name="Y"><![CDATA[0]]></Property>
<Property name="ImageUrl"><![CDATA["./Clock/320px-Breakfast!.jpg"]]></Property>
<Property name="Visibility"><![CDATA[vh>=8&&vh<9]]></Property>
<Property name="SizeY"><![CDATA[range/4]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Image2D</Type>
<Name><![CDATA[school]]></Name>
<Parent><![CDATA[nightdayshow]]></Parent>
<Property name="SizeX"><![CDATA[range/4]]></Property>
<Property name="RelativePosition"><![CDATA["SOUTH"]]></Property>
<Property name="X"><![CDATA[0]]></Property>
<Property name="Y"><![CDATA[0]]></Property>
<Property name="ImageUrl"><![CDATA["./Clock/Lmspic.png"]]></Property>
<Property name="Visibility"><![CDATA[vh>=9&&vh<10]]></Property>
<Property name="SizeY"><![CDATA[range/4]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Shape2D</Type>
<Name><![CDATA[circlecentre]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="FillColor"><![CDATA["Black"]]></Property>
<Property name="SizeX"><![CDATA[D/30]]></Property>
<Property name="ShapeType"><![CDATA["ELLIPSE"]]></Property>
<Property name="X"><![CDATA[zero]]></Property>
<Property name="Y"><![CDATA[zero]]></Property>
<Property name="SizeY"><![CDATA[D/30]]></Property>
<Property name="LineWidth"><![CDATA[3]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Expanded>false</Expanded>
<Type>Elements.Group2D</Type>
<Name><![CDATA[angles]]></Name>
<Parent><![CDATA[plottingPanel]]></Parent>
<Property name="X"><![CDATA[0]]></Property>
<Property name="Y"><![CDATA[1]]></Property>
<Property name="Visibility"><![CDATA[angleshow]]></Property>
</HtmlView.Element>
<HtmlView.Element>
<Type>Elements.Text2D</Type>
<Name><![CDATA[text]]></Name>
<Parent><![CDATA[angles]]></Parent>
<Property name="Text"><![CDATA[%angletext%]]></Property>
<Property name="EnabledPosition"><![CDATA["ENABLED_ANY"]]></Property>
</HtmlView.Element>
</Tree>
</Content>
</Osejs.HtmlView.Page>
</Osejs.HtmlView>
</Osejs>
