(function(){
  window.twx = window.twx || {};

  var requires = ["ionic","twx.byoc"];
  var twxViewControllersModule = angular.module('twxViewControllers', requires);
  twxViewControllersModule.run(function($templateCache) {
    //Inject an ng-if for preview cases where the web-assembly module needs time to load & compile async.
    //Delays loading model-items until its ready and the model tags are processed.
    
      var viewHTML =  '<ion-view hasGridEvenRows="true" view-type="ar" twx-view="Home" view-title="Home" ctrl-name="Home_TwxViewController" can-swipe-back="false"><div class="overlay ng-hide" ng-show=""></div><ion-content scroll="false" ><twx-widget widget-id="view-1" original-widget="twx-view" widget-name="view-1"><twx-widget-property name="widgetName" datatype="string" value="view-1"></twx-widget-property><twx-widget-property name="viewtype" datatype="string" value="ar"></twx-widget-property><twx-widget-property name="class" datatype="string"></twx-widget-property><twx-widget-content><twx-container-content class="{{me.class}}"><twx-widget widget-id="x-de359fea-2140-4831-8326-84a5fb3aa312" original-widget="twx-dt-view" widget-name="3D Container"><twx-widget-service name="unlockCameraAndOrientation"></twx-widget-service><twx-widget-service name="lockCameraAndOrientation"></twx-widget-service><twx-widget-property name="widgetName" datatype="string" value="3D Container"></twx-widget-property><twx-widget-property name="far" datatype="number" value="200"></twx-widget-property><twx-widget-property name="near" datatype="number" value="0.01"></twx-widget-property><twx-widget-property name="dropshadow" datatype="boolean" value="true"></twx-widget-property><twx-widget-property name="enabletrackingevents" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="camera" datatype="json" value="{}"></twx-widget-property><twx-widget-property name="persistmap" datatype="boolean" value="true"></twx-widget-property><twx-widget-property name="src" datatype="string" value="TW-VuMark.xml"></twx-widget-property><twx-widget-property name="extendedtracking" datatype="boolean" value="true"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="true"></twx-widget-property><twx-widget-content><twx-dt-view near="0.01" far="200" extendedtracking="true" persistmap="true" dropshadow="{{me.dropshadow}}">\n'+
'     <twx-dt-tracker id="tracker1" enabletrackingevents="false">\n'+
'        <twx-container-content>\n'+
'           <div class="targetGuide" ng-class="targetGuideClass" ng-hide="hideTargetGuide">\n'+
'               <div class="bracket-top-left"></div>\n'+
'               <div class="bracket-top-right"></div>\n'+
'               <div class="bracket-bottom-right"></div>\n'+
'               <div class="bracket-bottom-left"></div>\n'+
'               <div class="targetGuideText hint" ng-hide="hideTargetGuide">{{targetGuideHint}}</div>\n'+
'           </div>\n'+
'        </twx-container-content>\n'+
'     </twx-dt-tracker>\n'+
'</twx-dt-view></twx-widget-content></twx-widget><twx-widget widget-id="2DOverlay-1" original-widget="twx-overlay" widget-name="2D Overlay"><twx-widget-property name="widgetName" datatype="string" value="2D Overlay"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="true"></twx-widget-property><twx-widget-content><div class="twx-2d-overlay {{me.class}}" ng-show="app.fn.isTrue(me.visible)"><twx-container-content><div class="panel top-panel top" style=" "><twx-widget widget-id="gridLayout-4" original-widget="twx-gridlayout" widget-name="gridLayout-4"><twx-widget-property name="widgetName" datatype="string" value="gridLayout-4"></twx-widget-property><twx-widget-property name="evenlyspacedrows" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="class" datatype="string"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="true"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" even-rows="false" class="gridLayout {{me.class}}" style="padding:;"><twx-container-content><div class="row undefined" style="height: 36px"><div class="col undefined" style="flex-direction:column;justify-content: center;align-items: center;padding: 0px;flex-wrap: wrap;-webkit-flex: 0 0 580px; flex: 0 0 580px"><twx-widget widget-id="topRowLabel-1" original-widget="twx-label" widget-name="topRowLabel-1"><twx-widget-property name="widgetName" datatype="string" value="topRowLabel-1"></twx-widget-property><twx-widget-property name="wrap" datatype="boolean" value="true"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="true"></twx-widget-property><twx-widget-property name="padding" datatype="string"></twx-widget-property><twx-widget-property name="stateFormat" datatype="string"></twx-widget-property><twx-widget-property name="stateFormatValue" datatype="string" value="text"></twx-widget-property><twx-widget-property name="enableStateFormatting" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="status-label"></twx-widget-property><twx-widget-property name="text" datatype="string" value="Weekly device care"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="labelWidget {{me.class}} wrapSettingsClass" style="" twx-native-events="">{{me.text}}</div></twx-widget-content></twx-widget><twx-widget widget-id="spinner-1" original-widget="twx-spinner" widget-name="spinner-1"><twx-widget-property name="widgetName" datatype="string" value="spinner-1"></twx-widget-property><twx-widget-property name="class" datatype="string" value=""></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="icon" datatype="string" value="Android"></twx-widget-property><twx-widget-content><ion-spinner class="spinner " icon="android" ng-show="app.fn.isTrue(me.visible)"></ion-spinner></twx-widget-content></twx-widget></div></div></twx-container-content></div></twx-widget-content></twx-widget></div><div class="panel body "><div class="panel undefined left" style=" flex: 0 0 300px"></div><div class="panel undefined center" style=" "></div><div class="panel  right" style=" flex: 0 0 330px"><twx-widget widget-id="gridLayout-2" original-widget="twx-gridlayout" widget-name="gridLayout-2" class="hasEvenlySpacedRows"><twx-widget-property name="widgetName" datatype="string" value="gridLayout-2"></twx-widget-property><twx-widget-property name="evenlyspacedrows" datatype="boolean" value="true"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="class" datatype="string" value=""></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="true"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" even-rows="true" class="gridLayout {{me.class}}" style="padding:;"><twx-container-content><div class="row " style=""><div class="col " style="flex-direction:row;justify-content: flex-start;align-items: stretch;padding: 0px;flex-wrap: no-wrap;"><twx-widget widget-id="panel-6" original-widget="twx-panel" widget-name="checkbox panel"><twx-widget-property name="widgetName" datatype="string" value="checkbox panel"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="true"></twx-widget-property><twx-widget-property name="wrap" datatype="string" value="wrap"></twx-widget-property><twx-widget-property name="alignment" datatype="string" value="flex-start"></twx-widget-property><twx-widget-property name="justification" datatype="string" value="flex-start"></twx-widget-property><twx-widget-property name="flexdirection" datatype="string" value="column"></twx-widget-property><twx-widget-property name="padding" datatype="string"></twx-widget-property><twx-widget-property name="height" datatype="string" value="100%"></twx-widget-property><twx-widget-property name="width" datatype="string" value=""></twx-widget-property><twx-widget-property name="class" datatype="string" value="panel-test"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="twx-panel {{me.class}}" style="height: 100%;"><twx-container-content style="flex-direction:column; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap;"> <twx-widget widget-id="card-2" original-widget="twx-card" widget-name="checkbox card" scrollable="true"><twx-widget-property name="widgetName" datatype="string" value="checkbox card"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="10px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value="5px"></twx-widget-property><twx-widget-property name="scrollable" datatype="boolean" value="true"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="true"></twx-widget-property><twx-widget-property name="footer" datatype="string" value=""></twx-widget-property><twx-widget-property name="header" datatype="string" value="Case: Clean Decapper"></twx-widget-property><twx-widget-property name="class" datatype="string" value="card-container"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="card {{me.class}}  has-header-footer" style="padding:10px; margin:5px;"><div class="item item-divider">{{me.header}}</div><twx-container-content><twx-widget widget-id="checkbox-1" original-widget="twx-checkbox" widget-name="checkbox-1"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;1&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-1"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="true"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Switch the Machine off"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597138172969" source-type="ui" source-label="Checkbox" source-name="checkbox-2" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-2&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-2" original-widget="twx-checkbox" widget-name="checkbox-2"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;2&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-2"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Disconnect Air Supply"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597134144377" source-type="ui" source-label="Checkbox" source-name="checkbox-1" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-1&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597138181743" source-type="ui" source-label="Checkbox" source-name="checkbox-3" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-3&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-3" original-widget="twx-checkbox" widget-name="checkbox-3"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;3&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-3"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Loosen the allen screw"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597134152273" source-type="ui" source-label="Checkbox" source-name="checkbox-2" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-2&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597138187448" source-type="ui" source-label="Checkbox" source-name="checkbox-4" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-4&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-4" original-widget="twx-checkbox" widget-name="checkbox-4"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;4&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-4"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Open the door"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597134159149" source-type="ui" source-label="Checkbox" source-name="checkbox-3" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-3&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597138192893" source-type="ui" source-label="Checkbox" source-name="checkbox-5" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-5&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-5" original-widget="twx-checkbox" widget-name="checkbox-5"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;5&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-5"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Pull the indexing plunger"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597134166322" source-type="ui" source-label="Checkbox" source-name="checkbox-4" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-4&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597138198447" source-type="ui" source-label="Checkbox" source-name="checkbox-6" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-6&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-6" original-widget="twx-checkbox" widget-name="checkbox-6"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;6&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-6"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Pull the cap funnel towards"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597134173490" source-type="ui" source-label="Checkbox" source-name="checkbox-5" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-5&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597758746198" source-type="ui" source-label="Checkbox" source-name="checkbox-6a" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-6a&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-6a" original-widget="twx-checkbox" widget-name="checkbox-6a"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;6a&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-6a"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Pull the cap funnel upwards"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597758634296" source-type="ui" source-label="Checkbox" source-name="checkbox-6" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-6&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597758760997" source-type="ui" source-label="Checkbox" source-name="checkbox-7" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-7&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-7" original-widget="twx-checkbox" widget-name="checkbox-7"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;7&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-7"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Check the interior"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597138212961" source-type="ui" source-label="Checkbox" source-name="checkbox-8" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-8&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind><twx-databind databind-id="db-1597758737051" source-type="ui" source-label="Checkbox" source-name="checkbox-6a" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-6a&apos;][&apos;value&apos;]" to-property="visible"></twx-databind></twx-widget><twx-widget widget-id="checkbox-8" original-widget="twx-checkbox" widget-name="checkbox-8"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;8&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-8"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Clean the interior"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597134184577" source-type="ui" source-label="Checkbox" source-name="checkbox-7" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-7&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597138219017" source-type="ui" source-label="Checkbox" source-name="checkbox-9" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-9&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-9" original-widget="twx-checkbox" widget-name="checkbox-9"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;9&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-9"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Clean the cap funnel"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597134189330" source-type="ui" source-label="Checkbox" source-name="checkbox-8" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-8&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597138224869" source-type="ui" source-label="Checkbox" source-name="checkbox-10" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-10&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-10" original-widget="twx-checkbox" widget-name="checkbox-10"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;10&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-10"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Remove possible residues"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597134195777" source-type="ui" source-label="Checkbox" source-name="checkbox-9" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-9&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597139485136" source-type="ui" source-label="Checkbox" source-name="checkbox-11" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-11&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-11" original-widget="twx-checkbox" widget-name="checkbox-11"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;11&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-11"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Clean the sensors"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139470806" source-type="ui" source-label="Checkbox" source-name="checkbox-10" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-10&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597139495545" source-type="ui" source-label="Checkbox" source-name="checkbox-12" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-12&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-12" original-widget="twx-checkbox" widget-name="checkbox-12"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;12&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-12"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Insert cap funnel"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139489855" source-type="ui" source-label="Checkbox" source-name="checkbox-11" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-11&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597139507883" source-type="ui" source-label="Checkbox" source-name="checkbox-13" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-13&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-13" original-widget="twx-checkbox" widget-name="checkbox-13"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;13&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-13"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Close the door"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139500454" source-type="ui" source-label="Checkbox" source-name="checkbox-12" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-12&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597139517112" source-type="ui" source-label="Checkbox" source-name="checkbox-14" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-14&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-14" original-widget="twx-checkbox" widget-name="checkbox-14"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;14&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-14"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Remove the lower tub"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139512007" source-type="ui" source-label="Checkbox" source-name="checkbox-13" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-13&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597139534125" source-type="ui" source-label="Checkbox" source-name="checkbox-15" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-15&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-15" original-widget="twx-checkbox" widget-name="checkbox-15"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;15&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-15"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Loosen the first screw"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139521985" source-type="ui" source-label="Checkbox" source-name="checkbox-14" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-14&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597139544821" source-type="ui" source-label="Checkbox" source-name="checkbox-16" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-16&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-16" original-widget="twx-checkbox" widget-name="checkbox-16"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;16&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-16"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Loosen the second screw"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139538762" source-type="ui" source-label="Checkbox" source-name="checkbox-15" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-15&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597139557378" source-type="ui" source-label="Checkbox" source-name="checkbox-17" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-17&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-17" original-widget="twx-checkbox" widget-name="checkbox-17"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;17&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-17"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Swing out the decapper module"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139549453" source-type="ui" source-label="Checkbox" source-name="checkbox-16" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-16&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597139568141" source-type="ui" source-label="Checkbox" source-name="checkbox-18" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-18&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-18" original-widget="twx-checkbox" widget-name="checkbox-18"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;18&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-18"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Clean the sensor"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139562399" source-type="ui" source-label="Checkbox" source-name="checkbox-17" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-17&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597139578797" source-type="ui" source-label="Checkbox" source-name="checkbox-19" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-19&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-19" original-widget="twx-checkbox" widget-name="checkbox-19"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;19&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-19"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Loosen screw"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139572641" source-type="ui" source-label="Checkbox" source-name="checkbox-18" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-18&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597759794103" source-type="ui" source-label="Checkbox" source-name="checkbox-19a" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-19a&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-19a" original-widget="twx-checkbox" widget-name="checkbox-19a"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;19a&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-19a"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Remove the cover"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139594507" source-type="ui" source-label="Checkbox" source-name="checkbox-20" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&quot;Home&quot;].wdg[&apos;checkbox-20&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind><twx-databind databind-id="db-1597759777292" source-type="ui" source-label="Checkbox" source-name="checkbox-19" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-19&apos;][&apos;value&apos;]" to-property="visible"></twx-databind></twx-widget><twx-widget widget-id="checkbox-20" original-widget="twx-checkbox" widget-name="checkbox-20"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;20&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-20"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Clean parts"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139601225" source-type="ui" source-label="Checkbox" source-name="checkbox-21" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-21&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind><twx-databind databind-id="db-1597759912441" source-type="ui" source-label="Checkbox" source-name="checkbox-19a" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-19a&apos;][&apos;value&apos;]" to-property="visible"></twx-databind></twx-widget><twx-widget widget-id="checkbox-21" original-widget="twx-checkbox" widget-name="checkbox-21"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;21&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-21"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Clean the waste tube"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139589897" source-type="ui" source-label="Checkbox" source-name="checkbox-20" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-20&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597139613298" source-type="ui" source-label="Checkbox" source-name="checkbox-22" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-22&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-22" original-widget="twx-checkbox" widget-name="checkbox-22"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;22&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-22"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Remove possible residues"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139605491" source-type="ui" source-label="Checkbox" source-name="checkbox-21" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-21&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597139627936" source-type="ui" source-label="Checkbox" source-name="checkbox-23" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-23&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-23" original-widget="twx-checkbox" widget-name="checkbox-23"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;23&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-23"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Remove knurled screws"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139619663" source-type="ui" source-label="Checkbox" source-name="checkbox-22" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-22&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597139638696" source-type="ui" source-label="Checkbox" source-name="checkbox-24" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-24&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-24" original-widget="twx-checkbox" widget-name="checkbox-24"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;24&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-24"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Replace/Clean the acrylic glass ring"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139632218" source-type="ui" source-label="Checkbox" source-name="checkbox-23" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-23&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597139651122" source-type="ui" source-label="Checkbox" source-name="checkbox-25" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-25&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-25" original-widget="twx-checkbox" widget-name="checkbox-25"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;25&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-25"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Check the interior"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139644250" source-type="ui" source-label="Checkbox" source-name="checkbox-24" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-24&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597139664069" source-type="ui" source-label="Checkbox" source-name="checkbox-26" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-26&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-26" original-widget="twx-checkbox" widget-name="checkbox-26"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;26&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-26"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Swing in decapper module"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597139657531" source-type="ui" source-label="Checkbox" source-name="checkbox-25" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-25&apos;][&apos;value&apos;]" to-property="visible"></twx-databind><twx-databind databind-id="db-1597760124104" source-type="ui" source-label="Checkbox" source-name="checkbox-27" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-27&apos;][&apos;value&apos;]" to-property="disabled"></twx-databind></twx-widget><twx-widget widget-id="checkbox-27" original-widget="twx-checkbox" widget-name="checkbox-27"><twx-widget-event name="deselected" value="updateStatusBack();"></twx-widget-event><twx-widget-event name="selected" value="step(&quot;27&quot;);updateStatus();"></twx-widget-event><twx-widget-property name="widgetName" datatype="string" value="checkbox-27"></twx-widget-property><twx-widget-property name="padding" datatype="string" value="16px 16px 16px 60px"></twx-widget-property><twx-widget-property name="margin" datatype="string" value=""></twx-widget-property><twx-widget-property name="disabled" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="visible" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="label" datatype="string" value="Insert the waste tube"></twx-widget-property><twx-widget-property name="value" datatype="boolean" value="false"></twx-widget-property><twx-widget-property name="class" datatype="string" value="Fonts"></twx-widget-property><twx-widget-content><div ng-show="app.fn.isTrue(me.visible)" class="item item-checkbox {{me.class}}" twx-native-events="click" style="padding:16px 16px 16px 60px; "> <label class="checkbox"> <input type="checkbox" ng-disabled="app.fn.isTrue(me.disabled)" ng-model="me.value" onchange="twx.app.fn.triggerStudioEvent(event, &apos;change&apos;, event.target.checked);twx.app.fn.triggerStudioEvent(event, (event.target.checked ? &apos;selected&apos; : &apos;deselected&apos;))"> </label>{{me.label}}</div></twx-widget-content><twx-databind databind-id="db-1597760111739" source-type="ui" source-label="Checkbox" source-name="checkbox-26" source-item-type="property" source-item-name="value" binding-type="widget_property" from-expression="app.view[&apos;Home&apos;].wdg[&apos;checkbox-26&apos;][&apos;value&apos;]" to-property="visible"></twx-databind></twx-widget></twx-container-content></div></twx-widget-content><twx-databind databind-id="db-1556615162856" source-type="data" source-name="Checklist_Lang_Header" source-item-type="value" source-item-name="Checklist_Lang_Header" binding-type="custom_field" from-expression="app.params[&apos;Checklist_Lang_Header&apos;]" to-property="header"></twx-databind></twx-widget></twx-container-content></div></twx-widget-content></twx-widget></div></div></twx-container-content></div></twx-widget-content></twx-widget></div></div><div class="panel top-panel bottom" style=" "></div></twx-container-content></div></twx-widget-content></twx-widget></twx-container-content></twx-widget-content><twx-fragment-parameters></twx-fragment-parameters><twx-view-data></twx-view-data></twx-widget></ion-content></ion-view>\n';
      if (twx.app.isPreview() && viewHTML.indexOf('view-type="ar"') > 0) {
        viewHTML = viewHTML.replace(/<twx-dt-modelitem /ig, '<twx-dt-modelitem ng-if="$root.thingViewReady !== false" ');
      }
      $templateCache.put('app/components/Home.html', viewHTML);
    

    
  });

  

  twxViewControllersModule.controller('Home_TwxViewController',
      function ($scope, $element, $attrs, $timeout, $interval, $http, $ionicPopup, $ionicPopover, $stateParams, $location, $rootScope, tml3dRenderer, $injector, $sce) {
    $scope.app = twx.appScope;
    $scope.device = twx.device;
    $scope.view = {
        mdl: {
            custom: {}
        },
        wdg: {},
        fn: {},
        evt: {},
        prm: {},
        view: {}
    };

    var myWidgets = '';
    var activeWidgetEvents = {};
    var customWidgetEventListeners = [];

    if( $attrs['twxView'] !== undefined && $attrs['twxView'].length > 0 ) {
        $scope.app.view = $scope.app.view || {};
        $scope.app.view[$attrs['twxView']] = $scope.view;
    }

    this.setProperty = function(widgetProperty,value) {
        $scope.view.wdg[$attrs.widgetId][widgetProperty] = value;

    };

    this.addWidget = function(widgetScope,widgetElem,widgetAttrs) {
        var widgetId = widgetAttrs['widgetId'] || widgetAttrs['model'];
        var x = $scope;
        $scope.view.wdg = $scope.view.wdg || {};
        $scope.view.wdg[widgetId] = widgetScope[widgetId];
        myWidgets += '|' + widgetId;
        widgetScope['_widgetId'] = widgetId;
        //console.log('twxView --- adding widget "' + widgetId + '" to view - total widgets: ' + myWidgets);
    };

    $scope.getWidgetScope = function(widgetId){
      return $scope.view.wdg[widgetId];
    };

    $scope.getWidgetProp = function (widgetId, prop) {
      var propVal;
      if ($scope.view.wdg[widgetId] && $scope.view.wdg[widgetId][prop]) {
        propVal = $scope.view.wdg[widgetId][prop];
      }
      return propVal;
    };

    $scope.setWidgetProp = function (widgetId, prop, val) {
      if ($scope.view.wdg[widgetId]) {
        $scope.view.wdg[widgetId][prop] = val;
      }
    };

    $scope.addWidgetEventListener = function (widgetId, widgetEvent, callback) {
      customWidgetEventListeners.push({
        widgetId: widgetId,
        widgetEvent: widgetEvent,
        callback: callback
      });
      if (!activeWidgetEvents[widgetEvent]) {
        activeWidgetEvents[widgetEvent] = true;
        $scope.$on(widgetEvent, function (event, args) {
          _.each(customWidgetEventListeners, function (listenerInfo) {
            if (listenerInfo.widgetId == event.targetScope.widgetId && listenerInfo.widgetEvent == event.name) {
              listenerInfo.callback();
            }
          });
        });
      }
    };

    $scope.pulse = 1.0;

    $scope.tracerWidth = 0.0;
    $scope.tracerHeight = 0.0;
    $scope.tracerDimensions = { minX: 0, maxX: 1, minY: 0, maxY: 1 };
    $scope.loadingPromise = null;
    $scope.modelLoaded = $element.find('twx-dt-model').length === 0;
    var modelCount = $element.find('twx-dt-model').length;
    var modelLoadedCount = 0;
    var targets = $element.find('twx-dt-target');

    // hide the target guide initially until the actual image to use is known.
    $scope.hideTargetGuide = true;

    function setImageTrackerTracerDimensions(src) {
      let image = new Image();
      image.onload = () => {
        $scope.tracerWidth = image.width;
        $scope.tracerHeight = image.height;
        $scope.$apply();
      };

      image.src = src;
    }

    var setGuideImageData = function() {
      if (targets[0]) { // assume one target only
        var src = targets[0].getAttribute("src");

        if (src.startsWith("vuforia-vumark://")) {
          $scope.hideTargetGuide = false;
          $scope.targetGuideClass = "thingmark";
          $scope.targetGuideHint = "Point camera at ThingMark";
        } else if (src.startsWith('vuforia-image://')) {
          $scope.hideTargetGuide = false;
          $scope.targetGuideClass = "imageTarget";
          $scope.targetGuideHint = 'Point camera at image';
          setImageTrackerTracerDimensions(targets[0].getAttribute("guide-src"));
        } else if (!src.startsWith("spatial://")) {
          $scope.hideTargetGuide = false;
          var targetGuideDiv = $element[0].querySelector("div.targetGuide");
          var guideSrc = targets[0].getAttribute("guide-src");
          if (targetGuideDiv && guideSrc) {
            $scope.targetGuideClass = "imagemark";
            targetGuideDiv.style.backgroundImage = "url('" + guideSrc + "')";
          }
        }
      }
    };

    $scope.$applyAsync(function() {
      // This has to be invoked asynchronously now to give angular time to digest and interpolate the value of
      // guide-src="{{ ... }}" to the real value.
      setGuideImageData();
    });

    $scope.$on('trackingacquired', function (evt, arg) {
      tml3dRenderer.getTracked(function(trackedObjects) {
        $scope.startLoadingIndicatorIfNeeded(trackedObjects);
        $scope.applyTargetGuideIfNeeded(trackedObjects);
      });
    });

    $scope.$on('trackinglost', function (evt, arg) {
      tml3dRenderer.getTracked(function(trackedObjects) {
        $scope.applyTargetGuideIfNeeded(trackedObjects);
      });
    });

    $scope.$on('modelLoaded', function (evt, arg) {
      modelLoadedCount++;
      $scope.modelLoaded = true;

      tml3dRenderer.getTracked(function(trackedObjects) {
        $scope.applyTargetGuideIfNeeded(trackedObjects);
      });
    });

    // starts the 'spinner' animation around the thing code while the model is loading
    $scope.startLoadingIndicatorIfNeeded = function (trackedObjects) {
      if (!twx.app.fn.isCompatibleObjectsTracked(trackedObjects, targets)) {
        return;
      }

      // Start animation if this is first successful call to startLoadingIndicatorIfNeeded.
      var spinnerInterval = 0.03;
      if ($scope.pulse === 1.0 && $scope.loadingPromise === null) {
        $scope.loadingPromise = $interval(function () {
          // stop the animation after it makes one complete loop around
          if($scope.pulse <= 0) {
            // stop the animation
            $interval.cancel($scope.loadingPromise);
            $scope.loadingPromise = null;
            $scope.pulse = 0;
          }
          $scope.pulse -= spinnerInterval;
        }, 100);
      }
    };

    /**
     * @param trackedObjects [Elements]
     */
    $scope.applyTargetGuideIfNeeded = function(trackedObjects) {
      var hideTargetGuide = twx.app.fn.computeHideTargetGuide(trackedObjects, targets, modelLoadedCount, modelCount);

      $scope.$apply(function () {
        $scope.hideTargetGuide = hideTargetGuide;
      });
    };

    (function($scope, $element, $attrs, $timeout){

      // $scope, $element, $attrs, $injector, $sce, $timeout, $http, $ionicPopup, and $ionicPopover services are available


$scope.start = function() {


   if ($scope.app.params.checkbox_1_selected == "false" && $scope.app.view.Home.wdg["checkbox-1"].disabled == false) {

    //$scope.app.view.Home.wdg["checkbox-2"].disabled = false;
    $scope.app.view.Home.wdg["checkbox-1"].disabled = true;

  }
  else if ($scope.app.params.checkbox_2_selected == "false" && $scope.app.view.Home.wdg["checkbox-2"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-1"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-2"].disabled = true;

  }
  else if ($scope.app.params.checkbox_3_selected == "false" && $scope.app.view.Home.wdg["checkbox-3"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-2"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-3"].disabled = true;

  }


  else if ($scope.app.params.checkbox_4_selected == "false" && $scope.app.view.Home.wdg["checkbox-4"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-3"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-4"].disabled = true;

  } else if ($scope.app.params.checkbox_5_selected == "false" && $scope.app.view.Home.wdg["checkbox-5"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-4"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-5"].disabled = true;


  } else if ($scope.app.params.checkbox_6_selected == "false" && $scope.app.view.Home.wdg["checkbox-6"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-5"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-6"].disabled = true;
    
  } else if ($scope.app.params.checkbox_6a_selected == "false" && $scope.app.view.Home.wdg["checkbox-6a"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-6"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-6a"].disabled = true;

  } else if ($scope.app.params.checkbox_7_selected == "false" && $scope.app.view.Home.wdg["checkbox-7"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-6a"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-7"].disabled = true;


  } else if ($scope.app.params.checkbox_8_selected == "false" && $scope.app.view.Home.wdg["checkbox-8"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-7"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-8"].disabled = true;
  } else if ($scope.app.params.checkbox_9_selected == "false" && $scope.app.view.Home.wdg["checkbox-9"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-8"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-9"].disabled = true;
  } else if ($scope.app.params.checkbox_10_selected == "false" && $scope.app.view.Home.wdg["checkbox-10"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-9"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-10"].disabled = true;
  } else if ($scope.app.params.checkbox_11_selected == "false" && $scope.app.view.Home.wdg["checkbox-11"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-10"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-11"].disabled = true;
  } else if ($scope.app.params.checkbox_12_selected == "false" && $scope.app.view.Home.wdg["checkbox-12"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-11"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-12"].disabled = true;
  } else if ($scope.app.params.checkbox_13_selected == "false" && $scope.app.view.Home.wdg["checkbox-13"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-12"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-13"].disabled = true;
  } else if ($scope.app.params.checkbox_14_selected == "false" && $scope.app.view.Home.wdg["checkbox-14"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-13"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-14"].disabled = true;
  } else if ($scope.app.params.checkbox_15_selected == "false" && $scope.app.view.Home.wdg["checkbox-15"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-14"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-15"].disabled = true;
  } else if ($scope.app.params.checkbox_16_selected == "false" && $scope.app.view.Home.wdg["checkbox-16"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-15"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-16"].disabled = true;
  } else if ($scope.app.params.checkbox_17_selected == "false" && $scope.app.view.Home.wdg["checkbox-17"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-16"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-17"].disabled = true;
  } else if ($scope.app.params.checkbox_18_selected == "false" && $scope.app.view.Home.wdg["checkbox-18"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-17"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-18"].disabled = true;
  } else if ($scope.app.params.checkbox_19_selected == "false" && $scope.app.view.Home.wdg["checkbox-19"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-18"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-19"].disabled = true;
    
  } else if ($scope.app.params.checkbox_19a_selected == "false" && $scope.app.view.Home.wdg["checkbox-19a"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-19"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-19a"].disabled = true;
  } else if ($scope.app.params.checkbox_20_selected == "false" && $scope.app.view.Home.wdg["checkbox-20"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-19a"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-20"].disabled = true;
  } else if ($scope.app.params.checkbox_21_selected == "false" && $scope.app.view.Home.wdg["checkbox-21"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-20"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-21"].disabled = true;
  } else if ($scope.app.params.checkbox_22_selected == "false" && $scope.app.view.Home.wdg["checkbox-22"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-21"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-22"].disabled = true;
  } else if ($scope.app.params.checkbox_23_selected == "false" && $scope.app.view.Home.wdg["checkbox-23"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-22"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-23"].disabled = true;
  } else if ($scope.app.params.checkbox_24_selected == "false" && $scope.app.view.Home.wdg["checkbox-24"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-23"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-24"].disabled = true;
  } else if ($scope.app.params.checkbox_25_selected == "false" && $scope.app.view.Home.wdg["checkbox-25"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-24"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-25"].disabled = true;
  } else if ($scope.app.params.checkbox_26_selected == "false" && $scope.app.view.Home.wdg["checkbox-26"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-25"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-26"].disabled = true;


  }
   else if ($scope.app.params.checkbox_27_selected == "false" && $scope.app.view.Home.wdg["checkbox-27"].disabled == false) {

    $scope.app.view.Home.wdg["checkbox-26"].disabled = true;
    $scope.app.view.Home.wdg["checkbox-27"].disabled = true;


  }
}

    }($scope, $element, $attrs, $timeout))

  });

  

  var moduleDependencies = ['ionic', 'ngCordova', 'vuforia-angular', 'com.thingworx.services', 'twxRuntime'];
  var app = angular.module('app', moduleDependencies);
    twx = twx || {};
    twx.appXXX = app;

  app.config(function(DataConnectorConfigProvider, $ionicConfigProvider) {
    //Configured TWX server
    app.twxRoot = "/Thingworx";

    // Get this from application config later
    DataConnectorConfigProvider.addDataProvider({
        name: 'ThingworxConnector',
        urlRoot: app.twxRoot
    });

    $ionicConfigProvider.views.swipeBackEnabled(false);
  });

  // filter to allow remote resources (images, models, etc.) to be loaded
  app.filter('trustUrl', function($sce) {
      return function(url) {
          return $sce.trustAsResourceUrl(url);
      };
  });

  app.controller('AppCtrl', function ($scope, $rootScope, $state, $stateParams, $ionicModal, $location, $http, $injector, $templateCache) {
      var appScope = this;
      twx.appScope = this;
      var locationParams = {};
      // replace any occurrences of unreplaced URL params (i.e. {{foo:bar}}) with an empty string - DT-18867
      for(var entry of (new URLSearchParams(location.search.replace(/{{[a-zA-Z]*:[a-zA-Z]*}}/g, ''))).entries()) {
        locationParams[entry[0]] = entry[1];
      }
      twx.app.params = angular.extend(twx.app.params, $stateParams, locationParams);
      $scope.app.params = angular.extend({}, twx.app.params);
      appScope.params = twx.app.params;
      appScope.fn = twx.app.fn;
      appScope.mdl = twx.app.mdl;
      appScope.evt = twx.app.evt;

      twx.device.mdl['CurrentDevice'] = {
            svc: {
              'getCameraPictureURL': {}
            }
          };

      appScope.camera = {};
      appScope.camera.lastPictureData = "";
      appScope.camera.getPictureData = function(){
        var options = {
          destinationType: Camera.DestinationType.DATA_URL,
          sourceType: Camera.PictureSourceType.CAMERA
        };
        var $cordovaCamera = $injector.get('$cordovaCamera');
        $cordovaCamera.getPicture(options).then(function (imageData) {
          appScope.camera.lastPictureData = imageData;
        }, function (err) {
          console.error('Error getting camera.', err);
        });
      };

      appScope.camera.getPictureURL = function(){
        var options = {
          destinationType: Camera.DestinationType.FILE_URI,
          sourceType: Camera.PictureSourceType.CAMERA
        };
        var $cordovaCamera = $injector.get('$cordovaCamera');
        $cordovaCamera.getPicture(options).then(function (imageURI) {
          appScope.camera.lastPictureURL = imageURI;
          twx.device.mdl['CurrentDevice'].svc['getCameraPictureURL'].data = imageURI;
        }, function (err) {
          console.error('Error getting camera picture.', err);
        });
      };

      $scope.$on('device.mdl.CurrentDevice.svc.getCameraPictureURL', function () {
            appScope.camera.getPictureURL();
        });

      $scope.$on('app-fn-navigate',function(e,data) {
        twx.app.fn.navigate(data['viewname']);
      });

      if($rootScope.enableVoiceCommands && twx.app.isPreview()) {
        $rootScope.$on('$ionicView.afterEnter', function(event, toState, toParams, fromState, fromParams) {
          // get the app events each time the view changes to ensure we're displaying the "triggerable" app events for the current view
          $scope.appEvents = twx.app.getAppEventsWithHandlers();
        });
       }

      $scope.showModal = function(view){

        var modalContents = '';
        var modalUrl = 'app/components/' + view + '.html';
        $http.get(modalUrl).then(function(response) {
          modalContents = response.data;
          var modalTransformedContents = modalContents.replace('ion-view','ion-modal-view');
          $scope.modal = $ionicModal.fromTemplate(modalTransformedContents, {
            scope: $scope,
            animation: 'slide-in-up'
          });
          $scope.modal.show();
          $scope.$broadcast('show-modal');
        });

      };

      $scope.hideModal = function(){
        $scope.modal.hide();
        $scope.modal.remove();
      };

      $scope.$on('app-fn-show-modal',function(e,data) {
        // DT-18461 modalIsActive helps us to add particular listener in twxWidget controller (in runtime)
        $scope.modalIsActive = true;
        $scope.showModal(data['viewname']);
      });

      $scope.$on('app-fn-hide-modal',function(e,data) {
        delete $scope.modalIsActive;
        $scope.hideModal();
      });

      appScope.acceleration = {};
      appScope.location = {};
      appScope.location.getCurrentLocation = function(){
        var posOptions = {timeout: 10000, enableHighAccuracy: false};
        var $cordovaGeolocation = $injector.get('$cordovaGeolocation');
        $cordovaGeolocation
          .getCurrentPosition(posOptions)
          .then(function (position) {
            var lat  = position.coords.latitude;
            var long = position.coords.longitude;
            appScope.location.lastLocation = { latitude: lat, longitude: long };
          }, function(err) {
            console.error("Error getting current position", err);
          });
      };
      appScope.location.lastLocation = {
        latitude: 40.056545,
        longitude: -99.672037
      };

      if($rootScope.enableVoiceCommands) {
        // add the speech service to the app scope when there are voice alias'd app events
        appScope.speech = $injector.get('appSpeechService');
        if(twx.app.isPreview()) {
            // in preview for eyewear projects, we'll wrap the calls to app.speech.synthesizeSpeech so we can display the text in the snackbar
            appScope.speech.synthesizeSpeech = _.wrap(appScope.speech.synthesizeSpeech, function(func, info) {
              twx.app.fn.addSnackbarMessage(info.text, 'voice-response');
              return func(info);
            });
        }
      }

      twx.device.camera = appScope.camera;
      twx.device.location = appScope.location;
      twx.device.acceleration = appScope.acceleration;
      appScope.listCanSwipe = true;
    });

  app.controller('AppsMenuCtrl', function ($scope, $timeout, $http, $ionicSideMenuDelegate, $location, $ionicHistory) {
      $scope.isCordovaApp = window.cordova === undefined ? false : true;
      if( !($scope.isCordovaApp) ) {
        $scope.hasBackView = function () {
           return ($ionicHistory.backView() != null);
        };
      }
      else {
        //DT-12925: Disable swipe gesture to show the menu when the spatial target is in view
        $scope.$on('$ionicView.afterEnter', function() {
          $timeout(function() {
            $ionicSideMenuDelegate.canDragContent(document.querySelectorAll('[original-widget="twx-dt-target-spatial"]').length === 0);
          }, 10); //Just after other listeners still removing the old view widgets
        });
      }

      $scope.toggleLeftMenu = function () {
        $ionicSideMenuDelegate.toggleLeft();
      };

      $scope.navigateFromLeftMenu = function (path) {
        $location.path(path);
        $ionicSideMenuDelegate.toggleLeft();
      };

      $scope.$watch(function(){
          return $ionicSideMenuDelegate.getOpenRatio();
      }, function(newValue, oldValue) {
          $scope.hideLeftMenu = !$ionicSideMenuDelegate.isOpenLeft();
      });
    });

  app.controller('BaseCtrl', function ($scope, $parse, $location, $state, $ionicPopup, $timeout, $injector) {
    $scope['twInvokeAction'] = function(name){
      if (this['twActions'] && this['twActions'][name]){
        var action = this['twActions'][name];
        var fn = $parse(action.do, /* interceptorFn */ null, /* expensiveChecks */ true);
        fn(action.scope);
      } else {
        console.log('Action "' + name + '" not found');
      }
    };

    $scope._setCurrentAndNavigate = function(items, item, target){
      items.Current = item;
      $scope.navigate(target);
    };

    $scope.showConfirmPopup = function (title, subtitle, confirmEventId, confirmView) {
      var confirmPopup = $ionicPopup.confirm({
        title: title,
        template: subtitle
      });
      confirmPopup.then(function (res) {
        if (res) {
          $scope.$emit(confirmEventId);
          if (confirmView !== '') {
            $scope.navigateOnTimeout(confirmView);
          }
        }
      });
    };

    $scope.navigateOnTimeout = function(target){
      $timeout(function () {
        $scope.navigate(target);
      }, 300);
    };

    $scope.$on('$stateChangeStart',function() {
      try {
        var vuforiaCleanup = $injector.get('vuforiaCleanup');
        if (vuforiaCleanup) {
          vuforiaCleanup.requestCleanupAndPause();
        }
      } catch(e) {console.log(e);}
    });

    $scope.navigate = function(target){
      $state.go(target);
    };
  });

}(window, document, angular));

/**
 * Adds a description meta tag for each supported language.  If the meta tag already exists, it will update the contents.
 */
function appendDescriptionMetaData(descriptionObj) {
  descriptionObj = descriptionObj || {};
  var head = document.querySelector('head');

  // append a 'description' meta tag for each supported language
  Object.keys(descriptionObj).forEach(function(lang) {
    var meta = document.querySelector('meta[name="description"][lang="' + lang + '"]');
    if(!meta) {
      meta = document.createElement('meta');
      meta.name = "description";
      meta.lang = lang;
      meta.content = descriptionObj[lang];

      // add the meta tag to the document's head element
      head.appendChild(meta);
    } else {
      // update the meta tag value
      meta.content = descriptionObj[lang];
    }
  });
};

/**
 *  initialize the mobile app/experience title and populate the params in the window.twx.app.params object.
 */
function updateTitleWithExpTitle() {
  var defaultParams = {"vumark":{"id":"vumark","isbound":"false","isdeletable":"false","name":"ThingMark","value":""},"template":{"id":"template","isbound":"false","isdeletable":"false","name":"Thing Template","value":""},"thing":{"id":"thing","isbound":"false","isdeletable":"false","name":"Thing","value":""},"Failure":{"id":"Failure","isbound":"false","isdeletable":"true","name":"Failure","value":"true"},"Default_Name":{"id":"Default_Name","isbound":"false","isdeletable":"true","name":"Default_Name","value":""},"Default_Date":{"id":"Default_Date","isbound":"false","isdeletable":"true","name":"Default_Date","value":"07/2013"},"Visibility_button_service":{"id":"Visibility_button_service","isbound":"false","isdeletable":"true","name":"Visibility_button_service","value":"false"},"checkbox_ethanolSelected":{"id":"checkbox_ethanolSelected","isbound":"false","isdeletable":"true","name":"checkbox_ethanolSelected","value":"false"},"Visibility_label_requiredtools":{"id":"Visibility_label_requiredtools","isbound":"false","isdeletable":"true","name":"Visibility_label_requiredtools","value":"false"},"Label_requiredtools":{"id":"Label_requiredtools","isbound":"false","isdeletable":"true","name":"Label_requiredtools","value":"Please gather all required tools."},"checkbox_handschuheSelected":{"id":"checkbox_handschuheSelected","isbound":"false","isdeletable":"true","name":"checkbox_handschuheSelected","value":"false"},"checkbox_tuecherSelected":{"id":"checkbox_tuecherSelected","isbound":"false","isdeletable":"true","name":"checkbox_tuecherSelected","value":"false"},"checkbox_desinfektionSelected":{"id":"checkbox_desinfektionSelected","isbound":"false","isdeletable":"true","name":"checkbox_desinfektionSelected","value":"false"},"checkbox_werkzeugSelected":{"id":"checkbox_werkzeugSelected","isbound":"false","isdeletable":"true","name":"checkbox_werkzeugSelected","value":"false"},"Checklist_Lang_Header":{"id":"Checklist_Lang_Header","isbound":"false","isdeletable":"true","name":"Checklist_Lang_Header","value":""},"lang":{"id":"lang","isbound":"false","isdeletable":"true","name":"lang","value":""},"checkbox_1_selected":{"id":"checkbox_1_selected","isbound":"false","isdeletable":"true","name":"checkbox_1_selected","value":"true"},"checkbox_2_selected":{"id":"checkbox_2_selected","isbound":"false","isdeletable":"true","name":"checkbox_2_selected","value":"true"},"checkbox_3_selected":{"id":"checkbox_3_selected","isbound":"false","isdeletable":"true","name":"checkbox_3_selected","value":"true"},"checkbox_4_selected":{"id":"checkbox_4_selected","isbound":"false","isdeletable":"true","name":"checkbox_4_selected","value":"true"},"checkbox_5_selected":{"id":"checkbox_5_selected","isbound":"false","isdeletable":"true","name":"checkbox_5_selected","value":"true"},"checkbox_6_selected":{"id":"checkbox_6_selected","isbound":"false","isdeletable":"true","name":"checkbox_6_selected","value":"true"},"checkbox_7_selected":{"id":"checkbox_7_selected","isbound":"false","isdeletable":"true","name":"checkbox_7_selected","value":"true"},"checkbox_8_selected":{"id":"checkbox_8_selected","isbound":"false","isdeletable":"true","name":"checkbox_8_selected","value":"true"},"checkbox_9_selected":{"id":"checkbox_9_selected","isbound":"false","isdeletable":"true","name":"checkbox_9_selected","value":"true"},"checkbox_10_selected":{"id":"checkbox_10_selected","isbound":"false","isdeletable":"true","name":"checkbox_10_selected","value":"true"},"checkbox_11_selected":{"id":"checkbox_11_selected","isbound":"false","isdeletable":"true","name":"checkbox_11_selected","value":"true"},"checkbox_12_selected":{"id":"checkbox_12_selected","isbound":"false","isdeletable":"true","name":"checkbox_12_selected","value":"true"},"checkbox_13_selected":{"id":"checkbox_13_selected","isbound":"false","isdeletable":"true","name":"checkbox_13_selected","value":"true"},"checkbox_14_selected":{"id":"checkbox_14_selected","isbound":"false","isdeletable":"true","name":"checkbox_14_selected","value":"true"},"checkbox_15_selected":{"id":"checkbox_15_selected","isbound":"false","isdeletable":"true","name":"checkbox_15_selected","value":"true"},"checkbox_16_selected":{"id":"checkbox_16_selected","isbound":"false","isdeletable":"true","name":"checkbox_16_selected","value":""},"checkbox_17_selected":{"id":"checkbox_17_selected","isbound":"false","isdeletable":"true","name":"checkbox_17_selected","value":""},"checkbox_18_selected":{"id":"checkbox_18_selected","isbound":"false","isdeletable":"true","name":"checkbox_18_selected","value":""},"checkbox_19_selected":{"id":"checkbox_19_selected","isbound":"false","isdeletable":"true","name":"checkbox_19_selected","value":"true"},"checkbox_20_selected":{"id":"checkbox_20_selected","isbound":"false","isdeletable":"true","name":"checkbox_20_selected","value":"true"},"checkbox_21_selected":{"id":"checkbox_21_selected","isbound":"false","isdeletable":"true","name":"checkbox_21_selected","value":"true"},"checkbox_22_selected":{"id":"checkbox_22_selected","isbound":"false","isdeletable":"true","name":"checkbox_22_selected","value":""},"checkbox_23_selected":{"id":"checkbox_23_selected","isbound":"false","isdeletable":"true","name":"checkbox_23_selected","value":""},"checkbox_24_selected":{"id":"checkbox_24_selected","isbound":"false","isdeletable":"true","name":"checkbox_24_selected","value":""},"checkbox_25_selected":{"id":"checkbox_25_selected","isbound":"false","isdeletable":"true","name":"checkbox_25_selected","value":""},"checkbox_26_selected":{"id":"checkbox_26_selected","isbound":"false","isdeletable":"true","name":"checkbox_26_selected","value":""},"ptc":{"id":"ptc","isbound":"false","isdeletable":"true","name":"ptc","value":""},"checkbox_27_selected":{"id":"checkbox_27_selected","isbound":"false","isdeletable":"true","name":"checkbox_27_selected","value":""},"checkbox_6a_selected":{"id":"checkbox_6a_selected","isbound":"false","isdeletable":"true","name":"checkbox_6a_selected","value":""},"checkbox_19a_selected":{"id":"checkbox_19a_selected","isbound":"false","isdeletable":"true","name":"checkbox_19a_selected","value":""},"dangertxt":{"id":"dangertxt","isbound":"false","isdeletable":"true","name":"dangertxt","value":"Always wear complete protective clothing (lab coat, gloves mask and eye protection) when cleaning the cap funnel!"},"riskInf":{"id":"riskInf","isbound":"false","isdeletable":"true","name":"riskInf","value":"Risk of infection!"},"riskInj":{"id":"riskInj","isbound":"false","isdeletable":"true","name":"riskInj","value":"Risk of injury and infection!"},"riskText":{"id":"riskText","isbound":"false","isdeletable":"true","name":"riskText","value":""}};

  Object.keys(defaultParams).forEach(function(key) {
    if (defaultParams[key].value) {
      window.twx.app.params[key] = defaultParams[key].value;
    }
  });

  // get the index of the experience being loaded, default to the first view if the 'expIndex' is not passed on the URL

  var urlParams = new URLSearchParams(location.search);
  var title = '';
  var descriptionObj = {};
  if (urlParams.has('expIndex')) {
    //Old bookmarks will come through here, may not be correct if experiences have been redone in a different order
    var expIdx = parseInt(twx.app.fn.getParameterByName('expIndex', location.href) || '0', 10);
    title = experienceInfo.getTitleByIndex(expIdx);
    descriptionObj = experienceInfo.getDescription(expIdx);
  }
  else if (urlParams.has('expId')) {
    //expId could still be old/stale if experiences have been all deleted and redone
    var exp = experienceInfo.findExperienceById(parseFloat(urlParams.get('expId')));
    title = experienceInfo.getTitle(exp);
    descriptionObj = exp.description;
  }
  else {
    title = experienceInfo.getTitleByIndex(0);
    descriptionObj = experienceInfo.getDescription(0);
    if (!title) {
      title = urlParams.get('project');
    }
  }

  // set the page title as the name of the loaded experience
  document.title = title;

  appendDescriptionMetaData(descriptionObj);
}

var experienceInfo = new twx.app.ExperienceInfo({"name":"","version":"1.0.0","requires":["w320dp"],"experiences":[{"vumark":"44400:1","experienceType":"vumark","index-keys":["urn:vuforia:vumark:44400:1"],"title":{"en":"Test_scroll"},"description":{"en":"","en-US":""},"requires":["AR-tracking"],"tags":[],"icon":"","viewName":"Home","url-template":"index.html?expId=2&vumark={{vuforia:vumark}}","id":2,"thingTemplateName":"","entryPoint":"index.html?expId=2","thumbnail":""}],"accessType":"public","designedfor":["offline"],"lastExpId":2});
