Subversion Repository Public Repository

Nextrek

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
    "uid": "37BD01A5KBA1BA4238S876AE816A837C1419",
    "isLoaded": true,
    "lastModificationTime": 0,
    "items": {
        "name": "Object_Scene",
        "type": "game_script",
        "order": 16,
        "content": "# ===================================================================\n#\n#   Script: Object_Scene\n#\n#   $$COPYRIGHT$$\n#\n# ===================================================================\nclass Object_Scene extends gs.Object_Base\n  #  @objectCodecBlackList = [\"parent\", \"subObjects\", \"preparing\", \"behavior\", \"interpreter\", \"events\", \"sceneData\",\n  #  \"characterContainer\", \"pictureContainer\", \"textContainer\", \"videoContainer\", \"messageAreas\", \"hotspotContainer\", \"commonEventContainer\",\n  #  \"pictures\", \"texts\", \"videos\", \"messageAreas\", \"hotspots\", \"commonEvents\", \"layout\", \"layoutNVL\"]\n    \n    @accessors \"visible\", \n        set: (v) -> \n            if v != @visible_\n                @visible_ = v\n                @needsUpdate = yes\n                @fullRefresh()\n            \n        get: -> @visible_ and (!@parent or @parent.visible)\n    \n    ###*\n    * A scene object manages a whole visual novel scene with backgrounds, characters,\n    * messages, etc.\n    *\n    * @module vn\n    * @class Object_Scene\n    * @extends gs.Object_Base\n    * @memberof vn\n    * @constructor\n    ###    \n    constructor: ->\n        super()\n        \n        ###*\n        * Indicates that the scene is still in prepare-state and not ready yet.\n        * @property preparing\n        * @type boolean\n        ###\n        @preparing = yes\n        \n        ###*\n        * The behavior-component for the VN scene specific behavior.\n        * @property behavior\n        * @type gs.Component_GameSceneBehavior\n        ###\n        @behavior = new vn.Component_GameSceneBehavior()\n        \n        ###*\n        * An interpreter to execute the commands of scene.\n        * @property interpreter\n        * @type gs.Component_CommandInterpreter\n        ###\n        @interpreter = new gs.Component_CommandInterpreter()\n        \n        ###*\n        * An event-emitter to emit events.\n        * @property events\n        * @type gs.Component_EventEmitter\n        ###\n        @events = new gs.Component_EventEmitter()\n        \n        ###*\n        * Contains all background objects of the scene.\n        * @property backgroundContainer\n        * @type gs.Object_Container\n        ###\n        @backgroundContainer = new gs.Object_DomainContainer(gs.ContainerDisposeBehavior.NULL)\n        \n        ###*\n        * Contains all character objects of the scene.\n        * @property characterContainer\n        * @type gs.Object_Container\n        ###\n        @characterContainer = new gs.Object_Container(gs.ContainerDisposeBehavior.REMOVE)\n        \n        ###*\n        * Contains all picture objects of the scene.\n        * @property pictureContainer\n        * @type gs.Object_Container\n        ###\n        @pictureContainer = new gs.Object_DomainContainer(gs.ContainerDisposeBehavior.NULL)\n        \n        ###*\n        * Contains all video objects of the scene.\n        * @property videoContainer\n        * @type gs.Object_Container\n        ###\n        @videoContainer = new gs.Object_DomainContainer(gs.ContainerDisposeBehavior.NULL)\n        \n        ###*\n        * Contains all text objects of the scene.\n        * @property textContainer\n        * @type gs.Object_Container\n        ###\n        @textContainer = new gs.Object_DomainContainer(gs.ContainerDisposeBehavior.NULL)\n        \n        ###*\n        * Contains all hotspot objects of the scene.\n        * @property hotspotContainer\n        * @type gs.Object_Container\n        ###\n        @hotspotContainer = new gs.Object_DomainContainer(gs.ContainerDisposeBehavior.NULL)\n        \n        ###*\n        * Contains all common events which are running parallel/auto to the scene.\n        * @property commonEventContainer\n        * @type gs.Object_Container\n        ###\n        @commonEventContainer = new gs.Object_Container(gs.ContainerDisposeBehavior.NULL)\n        \n        ###*\n        * Contains all viewports which are used to create multi-layered screen effects.\n        * @property viewportContainer\n        * @type gs.Object_Container\n        ###\n        @viewportContainer = new gs.Object_Container(gs.ContainerDisposeBehavior.REMOVE)\n        \n        ###*\n        * Contains all interval timers.\n        * @property timerContainer\n        * @type gs.Object_Container\n        ###\n        @timerContainer = new gs.Object_DomainContainer(gs.ContainerDisposeBehavior.NULL)\n        \n        ###*\n        * Contains all message areas of the scene.\n        * @property messageAreaContainer\n        * @type gs.Object_Container\n        ###\n        @messageAreaContainer = new gs.Object_DomainContainer(gs.ContainerDisposeBehavior.NULL)\n        \n        @characterContainer.visible = yes\n        \n        ###*\n        * All picture objects as array. That is the same like accessing the <b>subObjects</b> of the\n        * container object.\n        * @property pictures\n        * @type gs.Object_Picture[]\n        * @readOnly\n        ###\n        @pictures = @pictureContainer.subObjects\n        \n        ###*\n        * All video objects as array. That is the same like accessing the <b>subObjects</b> of the\n        * container object.\n        * @property videos\n        * @type gs.Object_Video[]\n        * @readOnly\n        ###\n        @videos = @videoContainer.subObjects\n        \n        ###*\n        * All text objects as array. That is the same like accessing the <b>subObjects</b> of the\n        * container object.\n        * @property texts\n        * @type gs.Object_Text[]\n        * @readOnly\n        ###\n        @texts = @textContainer.subObjects\n        \n        ###*\n        * All character objects as array. That is the same like accessing the <b>subObjects</b> of the\n        * container object.\n        * @property characters\n        * @type gs.Object_Character[]\n        * @readOnly\n        ###\n        @characters = @characterContainer.subObjects\n        \n        ###*\n        * All backgrounds as array. That is the same like accessing the <b>subObjects</b> of the\n        * container object.\n        * @property backgrounds\n        * @type gs.Object_Background[]\n        * @readOnly\n        ###\n        @backgrounds = @backgroundContainer.subObjects\n        \n        ###*\n        * All hotspot objects as array. That is the same like accessing the <b>subObjects</b> of the\n        * container object.\n        * @property hotspots\n        * @type gs.Object_Hotspot[]\n        * @readOnly\n        ###\n        @hotspots = @hotspotContainer.subObjects\n        \n        ###*\n        * All interval timer objects as array. That is the same like accessing the <b>subObjects</b> of the\n        * container object.\n        * @property timers\n        * @type gs.Object_IntervalTimer[]\n        * @readOnly\n        ###\n        @timers = @timerContainer.subObjects\n        \n        ###*\n        * All message areas as array.\n        * @property messageAreas\n        * @type vn.MessageArea[]\n        * @readOnly\n        ###\n        @messageAreas = @messageAreaContainer.subObjects\n    \n        \n        ###*\n        * A timer object used for choices with time-limit.\n        * @property choiceTimer\n        * @type gs.Object_Timer\n        ###\n        @choiceTimer = new gs.Object_Timer()\n        \n        ###*\n        * Indicates if the UI layout is visible.\n        * @property visible\n        * @type boolean\n        ###\n        @visible = yes\n        \n        ###*\n        * @property visible_\n        * @type boolean\n        * @protected\n        ###\n        @visible_ = yes\n        \n        ###*\n        * The game settings.\n        * @property settings\n        * @type Object\n        ###\n        @settings = GameManager.settings\n        \n        ###*\n        * Temporary settings like skip, etc.\n        * @property tempSettings\n        * @type Object\n        ###\n        @tempSettings = GameManager.settings\n        \n        ###*\n        * Contains all data necessary to construct the scene.\n        * @property sceneData\n        * @type Object\n        ###\n        @sceneData = GameManager.sceneData\n        \n        @addObject(@backgroundContainer)\n        @addObject(@characterContainer)\n        @addObject(@pictureContainer)\n        @addObject(@textContainer)\n        @addObject(@videoContainer)\n        @addObject(@hotspotContainer)\n        @addObject(@viewportContainer)\n        @addObject(@commonEventContainer)\n        @addObject(@timerContainer)\n        @addObject(@choiceTimer)\n        @addObject(@messageAreaContainer)\n        \n        \n        @addComponent(new gs.Component_InputHandler())\n        @addComponent(@behavior)\n        @addComponent(@interpreter)\n        \n        \nvn.Object_Scene = Object_Scene",
        "parentId": "A05E7029K45DBA459BSADF4EEC07A526241A",
        "folder": false,
        "compiledContent": "var Object_Scene,\n  extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n  hasProp = {}.hasOwnProperty;\n\nObject_Scene = (function(superClass) {\n  extend(Object_Scene, superClass);\n\n  Object_Scene.accessors(\"visible\", {\n    set: function(v) {\n      if (v !== this.visible_) {\n        this.visible_ = v;\n        this.needsUpdate = true;\n        return this.fullRefresh();\n      }\n    },\n    get: function() {\n      return this.visible_ && (!this.parent || this.parent.visible);\n    }\n  });\n\n\n  /**\n  * A scene object manages a whole visual novel scene with backgrounds, characters,\n  * messages, etc.\n  *\n  * @module vn\n  * @class Object_Scene\n  * @extends gs.Object_Base\n  * @memberof vn\n  * @constructor\n   */\n\n  function Object_Scene() {\n    Object_Scene.__super__.constructor.call(this);\n\n    /**\n    * Indicates that the scene is still in prepare-state and not ready yet.\n    * @property preparing\n    * @type boolean\n     */\n    this.preparing = true;\n\n    /**\n    * The behavior-component for the VN scene specific behavior.\n    * @property behavior\n    * @type gs.Component_GameSceneBehavior\n     */\n    this.behavior = new vn.Component_GameSceneBehavior();\n\n    /**\n    * An interpreter to execute the commands of scene.\n    * @property interpreter\n    * @type gs.Component_CommandInterpreter\n     */\n    this.interpreter = new gs.Component_CommandInterpreter();\n\n    /**\n    * An event-emitter to emit events.\n    * @property events\n    * @type gs.Component_EventEmitter\n     */\n    this.events = new gs.Component_EventEmitter();\n\n    /**\n    * Contains all background objects of the scene.\n    * @property backgroundContainer\n    * @type gs.Object_Container\n     */\n    this.backgroundContainer = new gs.Object_DomainContainer(gs.ContainerDisposeBehavior.NULL);\n\n    /**\n    * Contains all character objects of the scene.\n    * @property characterContainer\n    * @type gs.Object_Container\n     */\n    this.characterContainer = new gs.Object_Container(gs.ContainerDisposeBehavior.REMOVE);\n\n    /**\n    * Contains all picture objects of the scene.\n    * @property pictureContainer\n    * @type gs.Object_Container\n     */\n    this.pictureContainer = new gs.Object_DomainContainer(gs.ContainerDisposeBehavior.NULL);\n\n    /**\n    * Contains all video objects of the scene.\n    * @property videoContainer\n    * @type gs.Object_Container\n     */\n    this.videoContainer = new gs.Object_DomainContainer(gs.ContainerDisposeBehavior.NULL);\n\n    /**\n    * Contains all text objects of the scene.\n    * @property textContainer\n    * @type gs.Object_Container\n     */\n    this.textContainer = new gs.Object_DomainContainer(gs.ContainerDisposeBehavior.NULL);\n\n    /**\n    * Contains all hotspot objects of the scene.\n    * @property hotspotContainer\n    * @type gs.Object_Container\n     */\n    this.hotspotContainer = new gs.Object_DomainContainer(gs.ContainerDisposeBehavior.NULL);\n\n    /**\n    * Contains all common events which are running parallel/auto to the scene.\n    * @property commonEventContainer\n    * @type gs.Object_Container\n     */\n    this.commonEventContainer = new gs.Object_Container(gs.ContainerDisposeBehavior.NULL);\n\n    /**\n    * Contains all viewports which are used to create multi-layered screen effects.\n    * @property viewportContainer\n    * @type gs.Object_Container\n     */\n    this.viewportContainer = new gs.Object_Container(gs.ContainerDisposeBehavior.REMOVE);\n\n    /**\n    * Contains all interval timers.\n    * @property timerContainer\n    * @type gs.Object_Container\n     */\n    this.timerContainer = new gs.Object_DomainContainer(gs.ContainerDisposeBehavior.NULL);\n\n    /**\n    * Contains all message areas of the scene.\n    * @property messageAreaContainer\n    * @type gs.Object_Container\n     */\n    this.messageAreaContainer = new gs.Object_DomainContainer(gs.ContainerDisposeBehavior.NULL);\n    this.characterContainer.visible = true;\n\n    /**\n    * All picture objects as array. That is the same like accessing the <b>subObjects</b> of the\n    * container object.\n    * @property pictures\n    * @type gs.Object_Picture[]\n    * @readOnly\n     */\n    this.pictures = this.pictureContainer.subObjects;\n\n    /**\n    * All video objects as array. That is the same like accessing the <b>subObjects</b> of the\n    * container object.\n    * @property videos\n    * @type gs.Object_Video[]\n    * @readOnly\n     */\n    this.videos = this.videoContainer.subObjects;\n\n    /**\n    * All text objects as array. That is the same like accessing the <b>subObjects</b> of the\n    * container object.\n    * @property texts\n    * @type gs.Object_Text[]\n    * @readOnly\n     */\n    this.texts = this.textContainer.subObjects;\n\n    /**\n    * All character objects as array. That is the same like accessing the <b>subObjects</b> of the\n    * container object.\n    * @property characters\n    * @type gs.Object_Character[]\n    * @readOnly\n     */\n    this.characters = this.characterContainer.subObjects;\n\n    /**\n    * All backgrounds as array. That is the same like accessing the <b>subObjects</b> of the\n    * container object.\n    * @property backgrounds\n    * @type gs.Object_Background[]\n    * @readOnly\n     */\n    this.backgrounds = this.backgroundContainer.subObjects;\n\n    /**\n    * All hotspot objects as array. That is the same like accessing the <b>subObjects</b> of the\n    * container object.\n    * @property hotspots\n    * @type gs.Object_Hotspot[]\n    * @readOnly\n     */\n    this.hotspots = this.hotspotContainer.subObjects;\n\n    /**\n    * All interval timer objects as array. That is the same like accessing the <b>subObjects</b> of the\n    * container object.\n    * @property timers\n    * @type gs.Object_IntervalTimer[]\n    * @readOnly\n     */\n    this.timers = this.timerContainer.subObjects;\n\n    /**\n    * All message areas as array.\n    * @property messageAreas\n    * @type vn.MessageArea[]\n    * @readOnly\n     */\n    this.messageAreas = this.messageAreaContainer.subObjects;\n\n    /**\n    * A timer object used for choices with time-limit.\n    * @property choiceTimer\n    * @type gs.Object_Timer\n     */\n    this.choiceTimer = new gs.Object_Timer();\n\n    /**\n    * Indicates if the UI layout is visible.\n    * @property visible\n    * @type boolean\n     */\n    this.visible = true;\n\n    /**\n    * @property visible_\n    * @type boolean\n    * @protected\n     */\n    this.visible_ = true;\n\n    /**\n    * The game settings.\n    * @property settings\n    * @type Object\n     */\n    this.settings = GameManager.settings;\n\n    /**\n    * Temporary settings like skip, etc.\n    * @property tempSettings\n    * @type Object\n     */\n    this.tempSettings = GameManager.settings;\n\n    /**\n    * Contains all data necessary to construct the scene.\n    * @property sceneData\n    * @type Object\n     */\n    this.sceneData = GameManager.sceneData;\n    this.addObject(this.backgroundContainer);\n    this.addObject(this.characterContainer);\n    this.addObject(this.pictureContainer);\n    this.addObject(this.textContainer);\n    this.addObject(this.videoContainer);\n    this.addObject(this.hotspotContainer);\n    this.addObject(this.viewportContainer);\n    this.addObject(this.commonEventContainer);\n    this.addObject(this.timerContainer);\n    this.addObject(this.choiceTimer);\n    this.addObject(this.messageAreaContainer);\n    this.addComponent(new gs.Component_InputHandler());\n    this.addComponent(this.behavior);\n    this.addComponent(this.interpreter);\n  }\n\n  return Object_Scene;\n\n})(gs.Object_Base);\n\nvn.Object_Scene = Object_Scene;\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLElBQUEsWUFBQTtFQUFBOzs7QUFBTTs7O0VBS0YsWUFBQyxDQUFBLFNBQUQsQ0FBVyxTQUFYLEVBQ0k7SUFBQSxHQUFBLEVBQUssU0FBQyxDQUFEO01BQ0QsSUFBRyxDQUFBLEtBQUssSUFBQyxDQUFBLFFBQVQ7UUFDSSxJQUFDLENBQUEsUUFBRCxHQUFZO1FBQ1osSUFBQyxDQUFBLFdBQUQsR0FBZTtlQUNmLElBQUMsQ0FBQSxXQUFELENBQUEsRUFISjs7SUFEQyxDQUFMO0lBTUEsR0FBQSxFQUFLLFNBQUE7YUFBRyxJQUFDLENBQUEsUUFBRCxJQUFjLENBQUMsQ0FBQyxJQUFDLENBQUEsTUFBRixJQUFZLElBQUMsQ0FBQSxNQUFNLENBQUMsT0FBckI7SUFBakIsQ0FOTDtHQURKOzs7QUFTQTs7Ozs7Ozs7Ozs7RUFVYSxzQkFBQTtJQUNULDRDQUFBOztBQUVBOzs7OztJQUtBLElBQUMsQ0FBQSxTQUFELEdBQWE7O0FBRWI7Ozs7O0lBS0EsSUFBQyxDQUFBLFFBQUQsR0FBZ0IsSUFBQSxFQUFFLENBQUMsMkJBQUgsQ0FBQTs7QUFFaEI7Ozs7O0lBS0EsSUFBQyxDQUFBLFdBQUQsR0FBbUIsSUFBQSxFQUFFLENBQUMsNEJBQUgsQ0FBQTs7QUFFbkI7Ozs7O0lBS0EsSUFBQyxDQUFBLE1BQUQsR0FBYyxJQUFBLEVBQUUsQ0FBQyxzQkFBSCxDQUFBOztBQUVkOzs7OztJQUtBLElBQUMsQ0FBQSxtQkFBRCxHQUEyQixJQUFBLEVBQUUsQ0FBQyxzQkFBSCxDQUEwQixFQUFFLENBQUMsd0JBQXdCLENBQUMsSUFBdEQ7O0FBRTNCOzs7OztJQUtBLElBQUMsQ0FBQSxrQkFBRCxHQUEwQixJQUFBLEVBQUUsQ0FBQyxnQkFBSCxDQUFvQixFQUFFLENBQUMsd0JBQXdCLENBQUMsTUFBaEQ7O0FBRTFCOzs7OztJQUtBLElBQUMsQ0FBQSxnQkFBRCxHQUF3QixJQUFBLEVBQUUsQ0FBQyxzQkFBSCxDQUEwQixFQUFFLENBQUMsd0JBQXdCLENBQUMsSUFBdEQ7O0FBRXhCOzs7OztJQUtBLElBQUMsQ0FBQSxjQUFELEdBQXNCLElBQUEsRUFBRSxDQUFDLHNCQUFILENBQTBCLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxJQUF0RDs7QUFFdEI7Ozs7O0lBS0EsSUFBQyxDQUFBLGFBQUQsR0FBcUIsSUFBQSxFQUFFLENBQUMsc0JBQUgsQ0FBMEIsRUFBRSxDQUFDLHdCQUF3QixDQUFDLElBQXREOztBQUVyQjs7Ozs7SUFLQSxJQUFDLENBQUEsZ0JBQUQsR0FBd0IsSUFBQSxFQUFFLENBQUMsc0JBQUgsQ0FBMEIsRUFBRSxDQUFDLHdCQUF3QixDQUFDLElBQXREOztBQUV4Qjs7Ozs7SUFLQSxJQUFDLENBQUEsb0JBQUQsR0FBNEIsSUFBQSxFQUFFLENBQUMsZ0JBQUgsQ0FBb0IsRUFBRSxDQUFDLHdCQUF3QixDQUFDLElBQWhEOztBQUU1Qjs7Ozs7SUFLQSxJQUFDLENBQUEsaUJBQUQsR0FBeUIsSUFBQSxFQUFFLENBQUMsZ0JBQUgsQ0FBb0IsRUFBRSxDQUFDLHdCQUF3QixDQUFDLE1BQWhEOztBQUV6Qjs7Ozs7SUFLQSxJQUFDLENBQUEsY0FBRCxHQUFzQixJQUFBLEVBQUUsQ0FBQyxzQkFBSCxDQUEwQixFQUFFLENBQUMsd0JBQXdCLENBQUMsSUFBdEQ7O0FBRXRCOzs7OztJQUtBLElBQUMsQ0FBQSxvQkFBRCxHQUE0QixJQUFBLEVBQUUsQ0FBQyxzQkFBSCxDQUEwQixFQUFFLENBQUMsd0JBQXdCLENBQUMsSUFBdEQ7SUFFNUIsSUFBQyxDQUFBLGtCQUFrQixDQUFDLE9BQXBCLEdBQThCOztBQUU5Qjs7Ozs7OztJQU9BLElBQUMsQ0FBQSxRQUFELEdBQVksSUFBQyxDQUFBLGdCQUFnQixDQUFDOztBQUU5Qjs7Ozs7OztJQU9BLElBQUMsQ0FBQSxNQUFELEdBQVUsSUFBQyxDQUFBLGNBQWMsQ0FBQzs7QUFFMUI7Ozs7Ozs7SUFPQSxJQUFDLENBQUEsS0FBRCxHQUFTLElBQUMsQ0FBQSxhQUFhLENBQUM7O0FBRXhCOzs7Ozs7O0lBT0EsSUFBQyxDQUFBLFVBQUQsR0FBYyxJQUFDLENBQUEsa0JBQWtCLENBQUM7O0FBRWxDOzs7Ozs7O0lBT0EsSUFBQyxDQUFBLFdBQUQsR0FBZSxJQUFDLENBQUEsbUJBQW1CLENBQUM7O0FBRXBDOzs7Ozs7O0lBT0EsSUFBQyxDQUFBLFFBQUQsR0FBWSxJQUFDLENBQUEsZ0JBQWdCLENBQUM7O0FBRTlCOzs7Ozs7O0lBT0EsSUFBQyxDQUFBLE1BQUQsR0FBVSxJQUFDLENBQUEsY0FBYyxDQUFDOztBQUUxQjs7Ozs7O0lBTUEsSUFBQyxDQUFBLFlBQUQsR0FBZ0IsSUFBQyxDQUFBLG9CQUFvQixDQUFDOztBQUd0Qzs7Ozs7SUFLQSxJQUFDLENBQUEsV0FBRCxHQUFtQixJQUFBLEVBQUUsQ0FBQyxZQUFILENBQUE7O0FBRW5COzs7OztJQUtBLElBQUMsQ0FBQSxPQUFELEdBQVc7O0FBRVg7Ozs7O0lBS0EsSUFBQyxDQUFBLFFBQUQsR0FBWTs7QUFFWjs7Ozs7SUFLQSxJQUFDLENBQUEsUUFBRCxHQUFZLFdBQVcsQ0FBQzs7QUFFeEI7Ozs7O0lBS0EsSUFBQyxDQUFBLFlBQUQsR0FBZ0IsV0FBVyxDQUFDOztBQUU1Qjs7Ozs7SUFLQSxJQUFDLENBQUEsU0FBRCxHQUFhLFdBQVcsQ0FBQztJQUV6QixJQUFDLENBQUEsU0FBRCxDQUFXLElBQUMsQ0FBQSxtQkFBWjtJQUNBLElBQUMsQ0FBQSxTQUFELENBQVcsSUFBQyxDQUFBLGtCQUFaO0lBQ0EsSUFBQyxDQUFBLFNBQUQsQ0FBVyxJQUFDLENBQUEsZ0JBQVo7SUFDQSxJQUFDLENBQUEsU0FBRCxDQUFXLElBQUMsQ0FBQSxhQUFaO0lBQ0EsSUFBQyxDQUFBLFNBQUQsQ0FBVyxJQUFDLENBQUEsY0FBWjtJQUNBLElBQUMsQ0FBQSxTQUFELENBQVcsSUFBQyxDQUFBLGdCQUFaO0lBQ0EsSUFBQyxDQUFBLFNBQUQsQ0FBVyxJQUFDLENBQUEsaUJBQVo7SUFDQSxJQUFDLENBQUEsU0FBRCxDQUFXLElBQUMsQ0FBQSxvQkFBWjtJQUNBLElBQUMsQ0FBQSxTQUFELENBQVcsSUFBQyxDQUFBLGNBQVo7SUFDQSxJQUFDLENBQUEsU0FBRCxDQUFXLElBQUMsQ0FBQSxXQUFaO0lBQ0EsSUFBQyxDQUFBLFNBQUQsQ0FBVyxJQUFDLENBQUEsb0JBQVo7SUFHQSxJQUFDLENBQUEsWUFBRCxDQUFrQixJQUFBLEVBQUUsQ0FBQyxzQkFBSCxDQUFBLENBQWxCO0lBQ0EsSUFBQyxDQUFBLFlBQUQsQ0FBYyxJQUFDLENBQUEsUUFBZjtJQUNBLElBQUMsQ0FBQSxZQUFELENBQWMsSUFBQyxDQUFBLFdBQWY7RUF4T1M7Ozs7R0F4QlUsRUFBRSxDQUFDOztBQW1ROUIsRUFBRSxDQUFDLFlBQUgsR0FBa0IiLCJzb3VyY2VzQ29udGVudCI6WyIjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiNcbiMgICBTY3JpcHQ6IE9iamVjdF9TY2VuZVxuI1xuIyAgICQkQ09QWVJJR0hUJCRcbiNcbiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuY2xhc3MgT2JqZWN0X1NjZW5lIGV4dGVuZHMgZ3MuT2JqZWN0X0Jhc2VcbiAgIyAgQG9iamVjdENvZGVjQmxhY2tMaXN0ID0gW1wicGFyZW50XCIsIFwic3ViT2JqZWN0c1wiLCBcInByZXBhcmluZ1wiLCBcImJlaGF2aW9yXCIsIFwiaW50ZXJwcmV0ZXJcIiwgXCJldmVudHNcIiwgXCJzY2VuZURhdGFcIixcbiAgIyAgXCJjaGFyYWN0ZXJDb250YWluZXJcIiwgXCJwaWN0dXJlQ29udGFpbmVyXCIsIFwidGV4dENvbnRhaW5lclwiLCBcInZpZGVvQ29udGFpbmVyXCIsIFwibWVzc2FnZUFyZWFzXCIsIFwiaG90c3BvdENvbnRhaW5lclwiLCBcImNvbW1vbkV2ZW50Q29udGFpbmVyXCIsXG4gICMgIFwicGljdHVyZXNcIiwgXCJ0ZXh0c1wiLCBcInZpZGVvc1wiLCBcIm1lc3NhZ2VBcmVhc1wiLCBcImhvdHNwb3RzXCIsIFwiY29tbW9uRXZlbnRzXCIsIFwibGF5b3V0XCIsIFwibGF5b3V0TlZMXCJdXG4gICAgXG4gICAgQGFjY2Vzc29ycyBcInZpc2libGVcIiwgXG4gICAgICAgIHNldDogKHYpIC0+IFxuICAgICAgICAgICAgaWYgdiAhPSBAdmlzaWJsZV9cbiAgICAgICAgICAgICAgICBAdmlzaWJsZV8gPSB2XG4gICAgICAgICAgICAgICAgQG5lZWRzVXBkYXRlID0geWVzXG4gICAgICAgICAgICAgICAgQGZ1bGxSZWZyZXNoKClcbiAgICAgICAgICAgIFxuICAgICAgICBnZXQ6IC0+IEB2aXNpYmxlXyBhbmQgKCFAcGFyZW50IG9yIEBwYXJlbnQudmlzaWJsZSlcbiAgICBcbiAgICAjIyMqXG4gICAgKiBBIHNjZW5lIG9iamVjdCBtYW5hZ2VzIGEgd2hvbGUgdmlzdWFsIG5vdmVsIHNjZW5lIHdpdGggYmFja2dyb3VuZHMsIGNoYXJhY3RlcnMsXG4gICAgKiBtZXNzYWdlcywgZXRjLlxuICAgICpcbiAgICAqIEBtb2R1bGUgdm5cbiAgICAqIEBjbGFzcyBPYmplY3RfU2NlbmVcbiAgICAqIEBleHRlbmRzIGdzLk9iamVjdF9CYXNlXG4gICAgKiBAbWVtYmVyb2Ygdm5cbiAgICAqIEBjb25zdHJ1Y3RvclxuICAgICMjIyAgICBcbiAgICBjb25zdHJ1Y3RvcjogLT5cbiAgICAgICAgc3VwZXIoKVxuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIEluZGljYXRlcyB0aGF0IHRoZSBzY2VuZSBpcyBzdGlsbCBpbiBwcmVwYXJlLXN0YXRlIGFuZCBub3QgcmVhZHkgeWV0LlxuICAgICAgICAqIEBwcm9wZXJ0eSBwcmVwYXJpbmdcbiAgICAgICAgKiBAdHlwZSBib29sZWFuXG4gICAgICAgICMjI1xuICAgICAgICBAcHJlcGFyaW5nID0geWVzXG4gICAgICAgIFxuICAgICAgICAjIyMqXG4gICAgICAgICogVGhlIGJlaGF2aW9yLWNvbXBvbmVudCBmb3IgdGhlIFZOIHNjZW5lIHNwZWNpZmljIGJlaGF2aW9yLlxuICAgICAgICAqIEBwcm9wZXJ0eSBiZWhhdmlvclxuICAgICAgICAqIEB0eXBlIGdzLkNvbXBvbmVudF9HYW1lU2NlbmVCZWhhdmlvclxuICAgICAgICAjIyNcbiAgICAgICAgQGJlaGF2aW9yID0gbmV3IHZuLkNvbXBvbmVudF9HYW1lU2NlbmVCZWhhdmlvcigpXG4gICAgICAgIFxuICAgICAgICAjIyMqXG4gICAgICAgICogQW4gaW50ZXJwcmV0ZXIgdG8gZXhlY3V0ZSB0aGUgY29tbWFuZHMgb2Ygc2NlbmUuXG4gICAgICAgICogQHByb3BlcnR5IGludGVycHJldGVyXG4gICAgICAgICogQHR5cGUgZ3MuQ29tcG9uZW50X0NvbW1hbmRJbnRlcnByZXRlclxuICAgICAgICAjIyNcbiAgICAgICAgQGludGVycHJldGVyID0gbmV3IGdzLkNvbXBvbmVudF9Db21tYW5kSW50ZXJwcmV0ZXIoKVxuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIEFuIGV2ZW50LWVtaXR0ZXIgdG8gZW1pdCBldmVudHMuXG4gICAgICAgICogQHByb3BlcnR5IGV2ZW50c1xuICAgICAgICAqIEB0eXBlIGdzLkNvbXBvbmVudF9FdmVudEVtaXR0ZXJcbiAgICAgICAgIyMjXG4gICAgICAgIEBldmVudHMgPSBuZXcgZ3MuQ29tcG9uZW50X0V2ZW50RW1pdHRlcigpXG4gICAgICAgIFxuICAgICAgICAjIyMqXG4gICAgICAgICogQ29udGFpbnMgYWxsIGJhY2tncm91bmQgb2JqZWN0cyBvZiB0aGUgc2NlbmUuXG4gICAgICAgICogQHByb3BlcnR5IGJhY2tncm91bmRDb250YWluZXJcbiAgICAgICAgKiBAdHlwZSBncy5PYmplY3RfQ29udGFpbmVyXG4gICAgICAgICMjI1xuICAgICAgICBAYmFja2dyb3VuZENvbnRhaW5lciA9IG5ldyBncy5PYmplY3RfRG9tYWluQ29udGFpbmVyKGdzLkNvbnRhaW5lckRpc3Bvc2VCZWhhdmlvci5OVUxMKVxuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIENvbnRhaW5zIGFsbCBjaGFyYWN0ZXIgb2JqZWN0cyBvZiB0aGUgc2NlbmUuXG4gICAgICAgICogQHByb3BlcnR5IGNoYXJhY3RlckNvbnRhaW5lclxuICAgICAgICAqIEB0eXBlIGdzLk9iamVjdF9Db250YWluZXJcbiAgICAgICAgIyMjXG4gICAgICAgIEBjaGFyYWN0ZXJDb250YWluZXIgPSBuZXcgZ3MuT2JqZWN0X0NvbnRhaW5lcihncy5Db250YWluZXJEaXNwb3NlQmVoYXZpb3IuUkVNT1ZFKVxuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIENvbnRhaW5zIGFsbCBwaWN0dXJlIG9iamVjdHMgb2YgdGhlIHNjZW5lLlxuICAgICAgICAqIEBwcm9wZXJ0eSBwaWN0dXJlQ29udGFpbmVyXG4gICAgICAgICogQHR5cGUgZ3MuT2JqZWN0X0NvbnRhaW5lclxuICAgICAgICAjIyNcbiAgICAgICAgQHBpY3R1cmVDb250YWluZXIgPSBuZXcgZ3MuT2JqZWN0X0RvbWFpbkNvbnRhaW5lcihncy5Db250YWluZXJEaXNwb3NlQmVoYXZpb3IuTlVMTClcbiAgICAgICAgXG4gICAgICAgICMjIypcbiAgICAgICAgKiBDb250YWlucyBhbGwgdmlkZW8gb2JqZWN0cyBvZiB0aGUgc2NlbmUuXG4gICAgICAgICogQHByb3BlcnR5IHZpZGVvQ29udGFpbmVyXG4gICAgICAgICogQHR5cGUgZ3MuT2JqZWN0X0NvbnRhaW5lclxuICAgICAgICAjIyNcbiAgICAgICAgQHZpZGVvQ29udGFpbmVyID0gbmV3IGdzLk9iamVjdF9Eb21haW5Db250YWluZXIoZ3MuQ29udGFpbmVyRGlzcG9zZUJlaGF2aW9yLk5VTEwpXG4gICAgICAgIFxuICAgICAgICAjIyMqXG4gICAgICAgICogQ29udGFpbnMgYWxsIHRleHQgb2JqZWN0cyBvZiB0aGUgc2NlbmUuXG4gICAgICAgICogQHByb3BlcnR5IHRleHRDb250YWluZXJcbiAgICAgICAgKiBAdHlwZSBncy5PYmplY3RfQ29udGFpbmVyXG4gICAgICAgICMjI1xuICAgICAgICBAdGV4dENvbnRhaW5lciA9IG5ldyBncy5PYmplY3RfRG9tYWluQ29udGFpbmVyKGdzLkNvbnRhaW5lckRpc3Bvc2VCZWhhdmlvci5OVUxMKVxuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIENvbnRhaW5zIGFsbCBob3RzcG90IG9iamVjdHMgb2YgdGhlIHNjZW5lLlxuICAgICAgICAqIEBwcm9wZXJ0eSBob3RzcG90Q29udGFpbmVyXG4gICAgICAgICogQHR5cGUgZ3MuT2JqZWN0X0NvbnRhaW5lclxuICAgICAgICAjIyNcbiAgICAgICAgQGhvdHNwb3RDb250YWluZXIgPSBuZXcgZ3MuT2JqZWN0X0RvbWFpbkNvbnRhaW5lcihncy5Db250YWluZXJEaXNwb3NlQmVoYXZpb3IuTlVMTClcbiAgICAgICAgXG4gICAgICAgICMjIypcbiAgICAgICAgKiBDb250YWlucyBhbGwgY29tbW9uIGV2ZW50cyB3aGljaCBhcmUgcnVubmluZyBwYXJhbGxlbC9hdXRvIHRvIHRoZSBzY2VuZS5cbiAgICAgICAgKiBAcHJvcGVydHkgY29tbW9uRXZlbnRDb250YWluZXJcbiAgICAgICAgKiBAdHlwZSBncy5PYmplY3RfQ29udGFpbmVyXG4gICAgICAgICMjI1xuICAgICAgICBAY29tbW9uRXZlbnRDb250YWluZXIgPSBuZXcgZ3MuT2JqZWN0X0NvbnRhaW5lcihncy5Db250YWluZXJEaXNwb3NlQmVoYXZpb3IuTlVMTClcbiAgICAgICAgXG4gICAgICAgICMjIypcbiAgICAgICAgKiBDb250YWlucyBhbGwgdmlld3BvcnRzIHdoaWNoIGFyZSB1c2VkIHRvIGNyZWF0ZSBtdWx0aS1sYXllcmVkIHNjcmVlbiBlZmZlY3RzLlxuICAgICAgICAqIEBwcm9wZXJ0eSB2aWV3cG9ydENvbnRhaW5lclxuICAgICAgICAqIEB0eXBlIGdzLk9iamVjdF9Db250YWluZXJcbiAgICAgICAgIyMjXG4gICAgICAgIEB2aWV3cG9ydENvbnRhaW5lciA9IG5ldyBncy5PYmplY3RfQ29udGFpbmVyKGdzLkNvbnRhaW5lckRpc3Bvc2VCZWhhdmlvci5SRU1PVkUpXG4gICAgICAgIFxuICAgICAgICAjIyMqXG4gICAgICAgICogQ29udGFpbnMgYWxsIGludGVydmFsIHRpbWVycy5cbiAgICAgICAgKiBAcHJvcGVydHkgdGltZXJDb250YWluZXJcbiAgICAgICAgKiBAdHlwZSBncy5PYmplY3RfQ29udGFpbmVyXG4gICAgICAgICMjI1xuICAgICAgICBAdGltZXJDb250YWluZXIgPSBuZXcgZ3MuT2JqZWN0X0RvbWFpbkNvbnRhaW5lcihncy5Db250YWluZXJEaXNwb3NlQmVoYXZpb3IuTlVMTClcbiAgICAgICAgXG4gICAgICAgICMjIypcbiAgICAgICAgKiBDb250YWlucyBhbGwgbWVzc2FnZSBhcmVhcyBvZiB0aGUgc2NlbmUuXG4gICAgICAgICogQHByb3BlcnR5IG1lc3NhZ2VBcmVhQ29udGFpbmVyXG4gICAgICAgICogQHR5cGUgZ3MuT2JqZWN0X0NvbnRhaW5lclxuICAgICAgICAjIyNcbiAgICAgICAgQG1lc3NhZ2VBcmVhQ29udGFpbmVyID0gbmV3IGdzLk9iamVjdF9Eb21haW5Db250YWluZXIoZ3MuQ29udGFpbmVyRGlzcG9zZUJlaGF2aW9yLk5VTEwpXG4gICAgICAgIFxuICAgICAgICBAY2hhcmFjdGVyQ29udGFpbmVyLnZpc2libGUgPSB5ZXNcbiAgICAgICAgXG4gICAgICAgICMjIypcbiAgICAgICAgKiBBbGwgcGljdHVyZSBvYmplY3RzIGFzIGFycmF5LiBUaGF0IGlzIHRoZSBzYW1lIGxpa2UgYWNjZXNzaW5nIHRoZSA8Yj5zdWJPYmplY3RzPC9iPiBvZiB0aGVcbiAgICAgICAgKiBjb250YWluZXIgb2JqZWN0LlxuICAgICAgICAqIEBwcm9wZXJ0eSBwaWN0dXJlc1xuICAgICAgICAqIEB0eXBlIGdzLk9iamVjdF9QaWN0dXJlW11cbiAgICAgICAgKiBAcmVhZE9ubHlcbiAgICAgICAgIyMjXG4gICAgICAgIEBwaWN0dXJlcyA9IEBwaWN0dXJlQ29udGFpbmVyLnN1Yk9iamVjdHNcbiAgICAgICAgXG4gICAgICAgICMjIypcbiAgICAgICAgKiBBbGwgdmlkZW8gb2JqZWN0cyBhcyBhcnJheS4gVGhhdCBpcyB0aGUgc2FtZSBsaWtlIGFjY2Vzc2luZyB0aGUgPGI+c3ViT2JqZWN0czwvYj4gb2YgdGhlXG4gICAgICAgICogY29udGFpbmVyIG9iamVjdC5cbiAgICAgICAgKiBAcHJvcGVydHkgdmlkZW9zXG4gICAgICAgICogQHR5cGUgZ3MuT2JqZWN0X1ZpZGVvW11cbiAgICAgICAgKiBAcmVhZE9ubHlcbiAgICAgICAgIyMjXG4gICAgICAgIEB2aWRlb3MgPSBAdmlkZW9Db250YWluZXIuc3ViT2JqZWN0c1xuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIEFsbCB0ZXh0IG9iamVjdHMgYXMgYXJyYXkuIFRoYXQgaXMgdGhlIHNhbWUgbGlrZSBhY2Nlc3NpbmcgdGhlIDxiPnN1Yk9iamVjdHM8L2I+IG9mIHRoZVxuICAgICAgICAqIGNvbnRhaW5lciBvYmplY3QuXG4gICAgICAgICogQHByb3BlcnR5IHRleHRzXG4gICAgICAgICogQHR5cGUgZ3MuT2JqZWN0X1RleHRbXVxuICAgICAgICAqIEByZWFkT25seVxuICAgICAgICAjIyNcbiAgICAgICAgQHRleHRzID0gQHRleHRDb250YWluZXIuc3ViT2JqZWN0c1xuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIEFsbCBjaGFyYWN0ZXIgb2JqZWN0cyBhcyBhcnJheS4gVGhhdCBpcyB0aGUgc2FtZSBsaWtlIGFjY2Vzc2luZyB0aGUgPGI+c3ViT2JqZWN0czwvYj4gb2YgdGhlXG4gICAgICAgICogY29udGFpbmVyIG9iamVjdC5cbiAgICAgICAgKiBAcHJvcGVydHkgY2hhcmFjdGVyc1xuICAgICAgICAqIEB0eXBlIGdzLk9iamVjdF9DaGFyYWN0ZXJbXVxuICAgICAgICAqIEByZWFkT25seVxuICAgICAgICAjIyNcbiAgICAgICAgQGNoYXJhY3RlcnMgPSBAY2hhcmFjdGVyQ29udGFpbmVyLnN1Yk9iamVjdHNcbiAgICAgICAgXG4gICAgICAgICMjIypcbiAgICAgICAgKiBBbGwgYmFja2dyb3VuZHMgYXMgYXJyYXkuIFRoYXQgaXMgdGhlIHNhbWUgbGlrZSBhY2Nlc3NpbmcgdGhlIDxiPnN1Yk9iamVjdHM8L2I+IG9mIHRoZVxuICAgICAgICAqIGNvbnRhaW5lciBvYmplY3QuXG4gICAgICAgICogQHByb3BlcnR5IGJhY2tncm91bmRzXG4gICAgICAgICogQHR5cGUgZ3MuT2JqZWN0X0JhY2tncm91bmRbXVxuICAgICAgICAqIEByZWFkT25seVxuICAgICAgICAjIyNcbiAgICAgICAgQGJhY2tncm91bmRzID0gQGJhY2tncm91bmRDb250YWluZXIuc3ViT2JqZWN0c1xuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIEFsbCBob3RzcG90IG9iamVjdHMgYXMgYXJyYXkuIFRoYXQgaXMgdGhlIHNhbWUgbGlrZSBhY2Nlc3NpbmcgdGhlIDxiPnN1Yk9iamVjdHM8L2I+IG9mIHRoZVxuICAgICAgICAqIGNvbnRhaW5lciBvYmplY3QuXG4gICAgICAgICogQHByb3BlcnR5IGhvdHNwb3RzXG4gICAgICAgICogQHR5cGUgZ3MuT2JqZWN0X0hvdHNwb3RbXVxuICAgICAgICAqIEByZWFkT25seVxuICAgICAgICAjIyNcbiAgICAgICAgQGhvdHNwb3RzID0gQGhvdHNwb3RDb250YWluZXIuc3ViT2JqZWN0c1xuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIEFsbCBpbnRlcnZhbCB0aW1lciBvYmplY3RzIGFzIGFycmF5LiBUaGF0IGlzIHRoZSBzYW1lIGxpa2UgYWNjZXNzaW5nIHRoZSA8Yj5zdWJPYmplY3RzPC9iPiBvZiB0aGVcbiAgICAgICAgKiBjb250YWluZXIgb2JqZWN0LlxuICAgICAgICAqIEBwcm9wZXJ0eSB0aW1lcnNcbiAgICAgICAgKiBAdHlwZSBncy5PYmplY3RfSW50ZXJ2YWxUaW1lcltdXG4gICAgICAgICogQHJlYWRPbmx5XG4gICAgICAgICMjI1xuICAgICAgICBAdGltZXJzID0gQHRpbWVyQ29udGFpbmVyLnN1Yk9iamVjdHNcbiAgICAgICAgXG4gICAgICAgICMjIypcbiAgICAgICAgKiBBbGwgbWVzc2FnZSBhcmVhcyBhcyBhcnJheS5cbiAgICAgICAgKiBAcHJvcGVydHkgbWVzc2FnZUFyZWFzXG4gICAgICAgICogQHR5cGUgdm4uTWVzc2FnZUFyZWFbXVxuICAgICAgICAqIEByZWFkT25seVxuICAgICAgICAjIyNcbiAgICAgICAgQG1lc3NhZ2VBcmVhcyA9IEBtZXNzYWdlQXJlYUNvbnRhaW5lci5zdWJPYmplY3RzXG4gICAgXG4gICAgICAgIFxuICAgICAgICAjIyMqXG4gICAgICAgICogQSB0aW1lciBvYmplY3QgdXNlZCBmb3IgY2hvaWNlcyB3aXRoIHRpbWUtbGltaXQuXG4gICAgICAgICogQHByb3BlcnR5IGNob2ljZVRpbWVyXG4gICAgICAgICogQHR5cGUgZ3MuT2JqZWN0X1RpbWVyXG4gICAgICAgICMjI1xuICAgICAgICBAY2hvaWNlVGltZXIgPSBuZXcgZ3MuT2JqZWN0X1RpbWVyKClcbiAgICAgICAgXG4gICAgICAgICMjIypcbiAgICAgICAgKiBJbmRpY2F0ZXMgaWYgdGhlIFVJIGxheW91dCBpcyB2aXNpYmxlLlxuICAgICAgICAqIEBwcm9wZXJ0eSB2aXNpYmxlXG4gICAgICAgICogQHR5cGUgYm9vbGVhblxuICAgICAgICAjIyNcbiAgICAgICAgQHZpc2libGUgPSB5ZXNcbiAgICAgICAgXG4gICAgICAgICMjIypcbiAgICAgICAgKiBAcHJvcGVydHkgdmlzaWJsZV9cbiAgICAgICAgKiBAdHlwZSBib29sZWFuXG4gICAgICAgICogQHByb3RlY3RlZFxuICAgICAgICAjIyNcbiAgICAgICAgQHZpc2libGVfID0geWVzXG4gICAgICAgIFxuICAgICAgICAjIyMqXG4gICAgICAgICogVGhlIGdhbWUgc2V0dGluZ3MuXG4gICAgICAgICogQHByb3BlcnR5IHNldHRpbmdzXG4gICAgICAgICogQHR5cGUgT2JqZWN0XG4gICAgICAgICMjI1xuICAgICAgICBAc2V0dGluZ3MgPSBHYW1lTWFuYWdlci5zZXR0aW5nc1xuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIFRlbXBvcmFyeSBzZXR0aW5ncyBsaWtlIHNraXAsIGV0Yy5cbiAgICAgICAgKiBAcHJvcGVydHkgdGVtcFNldHRpbmdzXG4gICAgICAgICogQHR5cGUgT2JqZWN0XG4gICAgICAgICMjI1xuICAgICAgICBAdGVtcFNldHRpbmdzID0gR2FtZU1hbmFnZXIuc2V0dGluZ3NcbiAgICAgICAgXG4gICAgICAgICMjIypcbiAgICAgICAgKiBDb250YWlucyBhbGwgZGF0YSBuZWNlc3NhcnkgdG8gY29uc3RydWN0IHRoZSBzY2VuZS5cbiAgICAgICAgKiBAcHJvcGVydHkgc2NlbmVEYXRhXG4gICAgICAgICogQHR5cGUgT2JqZWN0XG4gICAgICAgICMjI1xuICAgICAgICBAc2NlbmVEYXRhID0gR2FtZU1hbmFnZXIuc2NlbmVEYXRhXG4gICAgICAgIFxuICAgICAgICBAYWRkT2JqZWN0KEBiYWNrZ3JvdW5kQ29udGFpbmVyKVxuICAgICAgICBAYWRkT2JqZWN0KEBjaGFyYWN0ZXJDb250YWluZXIpXG4gICAgICAgIEBhZGRPYmplY3QoQHBpY3R1cmVDb250YWluZXIpXG4gICAgICAgIEBhZGRPYmplY3QoQHRleHRDb250YWluZXIpXG4gICAgICAgIEBhZGRPYmplY3QoQHZpZGVvQ29udGFpbmVyKVxuICAgICAgICBAYWRkT2JqZWN0KEBob3RzcG90Q29udGFpbmVyKVxuICAgICAgICBAYWRkT2JqZWN0KEB2aWV3cG9ydENvbnRhaW5lcilcbiAgICAgICAgQGFkZE9iamVjdChAY29tbW9uRXZlbnRDb250YWluZXIpXG4gICAgICAgIEBhZGRPYmplY3QoQHRpbWVyQ29udGFpbmVyKVxuICAgICAgICBAYWRkT2JqZWN0KEBjaG9pY2VUaW1lcilcbiAgICAgICAgQGFkZE9iamVjdChAbWVzc2FnZUFyZWFDb250YWluZXIpXG4gICAgICAgIFxuICAgICAgICBcbiAgICAgICAgQGFkZENvbXBvbmVudChuZXcgZ3MuQ29tcG9uZW50X0lucHV0SGFuZGxlcigpKVxuICAgICAgICBAYWRkQ29tcG9uZW50KEBiZWhhdmlvcilcbiAgICAgICAgQGFkZENvbXBvbmVudChAaW50ZXJwcmV0ZXIpXG4gICAgICAgIFxuICAgICAgICBcbnZuLk9iamVjdF9TY2VuZSA9IE9iamVjdF9TY2VuZSJdfQ==\n//# sourceURL=Object_Scene_151.js"
    },
    "summary": [
        "name",
        "type",
        "order"
    ]
}

Commits for Nextrek/s2s/data/37BD01A5KBA1BA4238S876AE816A837C1419.json

Diff revisions: vs.
Revision Author Commited Message
1084 MOliva picture MOliva Fri 11 May, 2018 12:41:55 +0000