Subversion Repository Public Repository

Nextrek

Diff Revisions 1085 vs 1086 for /s2s/data/4E35E151K4549A4236S864AE7CB8315B40EF.json

Diff revisions: vs.
  @@ -6,8 +6,8 @@
6 6 "name": "RecordManager",
7 7 "type": "game_script",
8 8 "order": 7,
9 - "content": "# ===================================================================\n#\n# Script: RecordManager\n#\n# $$COPYRIGHT$$\n#\n# ===================================================================\nclass RecordManager\n ###*\n * Manages the game's database and gives access to all data-records.\n *\n * @module gs\n * @class RecordManager\n * @memberof gs\n * @constructor\n ###\n constructor: ->\n ###*\n * Stores all data-record documents\n * @property documents\n * @type gs.Document[]\n ### \n @documents = null\n \n ###*\n * Stores all data-record documents by category > id.\n * @property collectionDocuments\n * @type gs.Document[][]\n ### \n @collectionDocuments = []\n \n ###*\n * Localizable strings of all data-record documents.\n * @property localizableStrings\n * @type Object\n ### \n @localizableStrings = {}\n \n ###*\n * Indicates if all data-records are already translated.\n * @property translated\n * @type boolean\n ### \n @translated = no\n \n ###*\n * Indicates if all data-records are loaded and initialized.\n * @property initialized\n * @type boolean\n ### \n @initialized = no\n \n ###*\n * Loads all data-record documents.\n *\n * @method load\n ### \n load: ->\n @documents = DataManager.getDocumentsByType(\"data_record\")\n\n ###*\n * Initializes RecordManager and all loaded data-record documents for use. Needs to be\n * called before RecordManager can be used.\n *\n * @method initialize\n ### \n initialize: ->\n iconSets = []\n for document in @documents\n if not this[document.items.category]?\n this[document.items.category] = []\n this[document.items.category + \"Collection\"] = []\n this[document.items.category + \"Array\"] = []\n @collectionDocuments.push(this[document.items.category + \"Collection\"])\n if document.items.id?\n this[document.items.category][document.items.id] = document.items.data\n this[document.items.category].push(document.items.data)\n this[document.items.category + \"Collection\"][document.items.id] = document\n this[document.items.category + \"Collection\"].push(document)\n this[document.items.category + \"Array\"].push(document.items.data)\n document.items.data.index = document.items.id\n if document.items.data? and document.items.data.icon?\n if iconSets.indexOf(document.items.data.icon.name) == -1\n iconSets.push(document.items.data.icon.name)\n \n if document.items.localizableStrings?\n Object.mixin(@localizableStrings, document.items.localizableStrings)\n \n @system = @system[0]\n @system.iconSets = iconSets\n \n if @system.colors\n for color, i in @system.colors\n @system.colors[i] = new Color(color)\n \n \n @initialized = yes\n \n ###*\n * Translates all localizable fields for each data-record.\n *\n * @method translate\n ### \n translate: ->\n if not @translated\n @translated = yes\n for document in @documents\n if document.items.data.name? and document.items.data.name.lcId?\n document.items.data.name = lcs(document.items.data.name)\n if document.items.data.description? and document.items.data.description.lcId?\n document.items.data.description = lcs(document.items.data.description)\n if document.items.data.removeMessage? and document.items.data.removeMessage.lcId?\n document.items.data.removeMessage = lcs(document.items.data.removeMessage)\n if document.items.data.usingMessage? and document.items.data.usingMessage.lcId?\n document.items.data.usingMessage = lcs(document.items.data.usingMessage)\n \n\nwindow.RecordManager = new RecordManager()",
10 - "compiledContent": "var RecordManager;\n\nRecordManager = (function() {\n\n /**\n * Manages the game's database and gives access to all data-records.\n *\n * @module gs\n * @class RecordManager\n * @memberof gs\n * @constructor\n */\n function RecordManager() {\n\n /**\n * Stores all data-record documents\n * @property documents\n * @type gs.Document[]\n */\n this.documents = null;\n\n /**\n * Stores all data-record documents by category > id.\n * @property collectionDocuments\n * @type gs.Document[][]\n */\n this.collectionDocuments = [];\n\n /**\n * Localizable strings of all data-record documents.\n * @property localizableStrings\n * @type Object\n */\n this.localizableStrings = {};\n\n /**\n * Indicates if all data-records are already translated.\n * @property translated\n * @type boolean\n */\n this.translated = false;\n\n /**\n * Indicates if all data-records are loaded and initialized.\n * @property initialized\n * @type boolean\n */\n this.initialized = false;\n }\n\n\n /**\n * Loads all data-record documents.\n *\n * @method load\n */\n\n RecordManager.prototype.load = function() {\n return this.documents = DataManager.getDocumentsByType(\"data_record\");\n };\n\n\n /**\n * Initializes RecordManager and all loaded data-record documents for use. Needs to be\n * called before RecordManager can be used.\n *\n * @method initialize\n */\n\n RecordManager.prototype.initialize = function() {\n var color, document, i, iconSets, j, k, len, len1, ref, ref1;\n iconSets = [];\n ref = this.documents;\n for (j = 0, len = ref.length; j < len; j++) {\n document = ref[j];\n if (this[document.items.category] == null) {\n this[document.items.category] = [];\n this[document.items.category + \"Collection\"] = [];\n this[document.items.category + \"Array\"] = [];\n this.collectionDocuments.push(this[document.items.category + \"Collection\"]);\n }\n if (document.items.id != null) {\n this[document.items.category][document.items.id] = document.items.data;\n this[document.items.category].push(document.items.data);\n this[document.items.category + \"Collection\"][document.items.id] = document;\n this[document.items.category + \"Collection\"].push(document);\n this[document.items.category + \"Array\"].push(document.items.data);\n document.items.data.index = document.items.id;\n }\n if ((document.items.data != null) && (document.items.data.icon != null)) {\n if (iconSets.indexOf(document.items.data.icon.name) === -1) {\n iconSets.push(document.items.data.icon.name);\n }\n }\n if (document.items.localizableStrings != null) {\n Object.mixin(this.localizableStrings, document.items.localizableStrings);\n }\n }\n this.system = this.system[0];\n this.system.iconSets = iconSets;\n if (this.system.colors) {\n ref1 = this.system.colors;\n for (i = k = 0, len1 = ref1.length; k < len1; i = ++k) {\n color = ref1[i];\n this.system.colors[i] = new Color(color);\n }\n }\n return this.initialized = true;\n };\n\n\n /**\n * Translates all localizable fields for each data-record.\n *\n * @method translate\n */\n\n RecordManager.prototype.translate = function() {\n var document, j, len, ref, results;\n if (!this.translated) {\n this.translated = true;\n ref = this.documents;\n results = [];\n for (j = 0, len = ref.length; j < len; j++) {\n document = ref[j];\n if ((document.items.data.name != null) && (document.items.data.name.lcId != null)) {\n document.items.data.name = lcs(document.items.data.name);\n }\n if ((document.items.data.description != null) && (document.items.data.description.lcId != null)) {\n document.items.data.description = lcs(document.items.data.description);\n }\n if ((document.items.data.removeMessage != null) && (document.items.data.removeMessage.lcId != null)) {\n document.items.data.removeMessage = lcs(document.items.data.removeMessage);\n }\n if ((document.items.data.usingMessage != null) && (document.items.data.usingMessage.lcId != null)) {\n results.push(document.items.data.usingMessage = lcs(document.items.data.usingMessage));\n } else {\n results.push(void 0);\n }\n }\n return results;\n }\n };\n\n return RecordManager;\n\n})();\n\nwindow.RecordManager = new RecordManager();\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLElBQUE7O0FBQU07O0FBQ0Y7Ozs7Ozs7O0VBUWEsdUJBQUE7O0FBQ1Q7Ozs7O0lBS0EsSUFBQyxDQUFBLFNBQUQsR0FBYTs7QUFFYjs7Ozs7SUFLQSxJQUFDLENBQUEsbUJBQUQsR0FBdUI7O0FBRXZCOzs7OztJQUtBLElBQUMsQ0FBQSxrQkFBRCxHQUFzQjs7QUFFdEI7Ozs7O0lBS0EsSUFBQyxDQUFBLFVBQUQsR0FBYzs7QUFFZDs7Ozs7SUFLQSxJQUFDLENBQUEsV0FBRCxHQUFlO0VBbENOOzs7QUFvQ2I7Ozs7OzswQkFLQSxJQUFBLEdBQU0sU0FBQTtXQUNGLElBQUMsQ0FBQSxTQUFELEdBQWEsV0FBVyxDQUFDLGtCQUFaLENBQStCLGFBQS9CO0VBRFg7OztBQUdOOzs7Ozs7OzBCQU1BLFVBQUEsR0FBWSxTQUFBO0FBQ1IsUUFBQTtJQUFBLFFBQUEsR0FBVztBQUNYO0FBQUEsU0FBQSxxQ0FBQTs7TUFDSSxJQUFPLHFDQUFQO1FBQ0ksSUFBSyxDQUFBLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBZixDQUFMLEdBQWdDO1FBQ2hDLElBQUssQ0FBQSxRQUFRLENBQUMsS0FBSyxDQUFDLFFBQWYsR0FBMEIsWUFBMUIsQ0FBTCxHQUErQztRQUMvQyxJQUFLLENBQUEsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFmLEdBQTBCLE9BQTFCLENBQUwsR0FBMEM7UUFDMUMsSUFBQyxDQUFBLG1CQUFtQixDQUFDLElBQXJCLENBQTBCLElBQUssQ0FBQSxRQUFRLENBQUMsS0FBSyxDQUFDLFFBQWYsR0FBMEIsWUFBMUIsQ0FBL0IsRUFKSjs7TUFLQSxJQUFHLHlCQUFIO1FBQ0ksSUFBSyxDQUFBLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBZixDQUF5QixDQUFBLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBZixDQUE5QixHQUFtRCxRQUFRLENBQUMsS0FBSyxDQUFDO1FBQ2xFLElBQUssQ0FBQSxRQUFRLENBQUMsS0FBSyxDQUFDLFFBQWYsQ0FBd0IsQ0FBQyxJQUE5QixDQUFtQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQWxEO1FBQ0EsSUFBSyxDQUFBLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBZixHQUEwQixZQUExQixDQUF3QyxDQUFBLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBZixDQUE3QyxHQUFrRTtRQUNsRSxJQUFLLENBQUEsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFmLEdBQTBCLFlBQTFCLENBQXVDLENBQUMsSUFBN0MsQ0FBa0QsUUFBbEQ7UUFDQSxJQUFLLENBQUEsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFmLEdBQTBCLE9BQTFCLENBQWtDLENBQUMsSUFBeEMsQ0FBNkMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUE1RDtRQUNBLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQXBCLEdBQTRCLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FOL0M7O01BT0EsSUFBRyw2QkFBQSxJQUF5QixrQ0FBNUI7UUFDSSxJQUFHLFFBQVEsQ0FBQyxPQUFULENBQWlCLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUExQyxDQUFBLEtBQW1ELENBQUMsQ0FBdkQ7VUFDSSxRQUFRLENBQUMsSUFBVCxDQUFjLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUF2QyxFQURKO1NBREo7O01BSUEsSUFBRyx5Q0FBSDtRQUNJLE1BQU0sQ0FBQyxLQUFQLENBQWEsSUFBQyxDQUFBLGtCQUFkLEVBQWtDLFFBQVEsQ0FBQyxLQUFLLENBQUMsa0JBQWpELEVBREo7O0FBakJKO0lBb0JBLElBQUMsQ0FBQSxNQUFELEdBQVUsSUFBQyxDQUFBLE1BQU8sQ0FBQSxDQUFBO0lBQ2xCLElBQUMsQ0FBQSxNQUFNLENBQUMsUUFBUixHQUFtQjtJQUVuQixJQUFHLElBQUMsQ0FBQSxNQUFNLENBQUMsTUFBWDtBQUNJO0FBQUEsV0FBQSxnREFBQTs7UUFDSSxJQUFDLENBQUEsTUFBTSxDQUFDLE1BQU8sQ0FBQSxDQUFBLENBQWYsR0FBd0IsSUFBQSxLQUFBLENBQU0sS0FBTjtBQUQ1QixPQURKOztXQUtBLElBQUMsQ0FBQSxXQUFELEdBQWU7RUE5QlA7OztBQWdDWjs7Ozs7OzBCQUtBLFNBQUEsR0FBVyxTQUFBO0FBQ1AsUUFBQTtJQUFBLElBQUcsQ0FBSSxJQUFDLENBQUEsVUFBUjtNQUNJLElBQUMsQ0FBQSxVQUFELEdBQWM7QUFDZDtBQUFBO1dBQUEscUNBQUE7O1FBQ0ksSUFBRyxrQ0FBQSxJQUE4Qix1Q0FBakM7VUFDSSxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFwQixHQUEyQixHQUFBLENBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBeEIsRUFEL0I7O1FBRUEsSUFBRyx5Q0FBQSxJQUFxQyw4Q0FBeEM7VUFDSSxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFwQixHQUFrQyxHQUFBLENBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBeEIsRUFEdEM7O1FBRUEsSUFBRywyQ0FBQSxJQUF1QyxnREFBMUM7VUFDSSxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFwQixHQUFvQyxHQUFBLENBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBeEIsRUFEeEM7O1FBRUEsSUFBRywwQ0FBQSxJQUFzQywrQ0FBekM7dUJBQ0ksUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBcEIsR0FBbUMsR0FBQSxDQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQXhCLEdBRHZDO1NBQUEsTUFBQTsrQkFBQTs7QUFQSjtxQkFGSjs7RUFETzs7Ozs7O0FBY2YsTUFBTSxDQUFDLGFBQVAsR0FBMkIsSUFBQSxhQUFBLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiNcbiMgICBTY3JpcHQ6IFJlY29yZE1hbmFnZXJcbiNcbiMgICAkJENPUFlSSUdIVCQkXG4jXG4jID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbmNsYXNzIFJlY29yZE1hbmFnZXJcbiAgICAjIyMqXG4gICAgKiBNYW5hZ2VzIHRoZSBnYW1lJ3MgZGF0YWJhc2UgYW5kIGdpdmVzIGFjY2VzcyB0byBhbGwgZGF0YS1yZWNvcmRzLlxuICAgICpcbiAgICAqIEBtb2R1bGUgZ3NcbiAgICAqIEBjbGFzcyBSZWNvcmRNYW5hZ2VyXG4gICAgKiBAbWVtYmVyb2YgZ3NcbiAgICAqIEBjb25zdHJ1Y3RvclxuICAgICMjI1xuICAgIGNvbnN0cnVjdG9yOiAtPlxuICAgICAgICAjIyMqXG4gICAgICAgICogU3RvcmVzIGFsbCBkYXRhLXJlY29yZCBkb2N1bWVudHNcbiAgICAgICAgKiBAcHJvcGVydHkgZG9jdW1lbnRzXG4gICAgICAgICogQHR5cGUgZ3MuRG9jdW1lbnRbXVxuICAgICAgICAjIyMgXG4gICAgICAgIEBkb2N1bWVudHMgPSBudWxsXG4gICAgICAgIFxuICAgICAgICAjIyMqXG4gICAgICAgICogU3RvcmVzIGFsbCBkYXRhLXJlY29yZCBkb2N1bWVudHMgYnkgY2F0ZWdvcnkgPiBpZC5cbiAgICAgICAgKiBAcHJvcGVydHkgY29sbGVjdGlvbkRvY3VtZW50c1xuICAgICAgICAqIEB0eXBlIGdzLkRvY3VtZW50W11bXVxuICAgICAgICAjIyMgXG4gICAgICAgIEBjb2xsZWN0aW9uRG9jdW1lbnRzID0gW11cbiAgICAgICAgXG4gICAgICAgICMjIypcbiAgICAgICAgKiBMb2NhbGl6YWJsZSBzdHJpbmdzIG9mIGFsbCBkYXRhLXJlY29yZCBkb2N1bWVudHMuXG4gICAgICAgICogQHByb3BlcnR5IGxvY2FsaXphYmxlU3RyaW5nc1xuICAgICAgICAqIEB0eXBlIE9iamVjdFxuICAgICAgICAjIyMgXG4gICAgICAgIEBsb2NhbGl6YWJsZVN0cmluZ3MgPSB7fVxuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIEluZGljYXRlcyBpZiBhbGwgZGF0YS1yZWNvcmRzIGFyZSBhbHJlYWR5IHRyYW5zbGF0ZWQuXG4gICAgICAgICogQHByb3BlcnR5IHRyYW5zbGF0ZWRcbiAgICAgICAgKiBAdHlwZSBib29sZWFuXG4gICAgICAgICMjIyBcbiAgICAgICAgQHRyYW5zbGF0ZWQgPSBub1xuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIEluZGljYXRlcyBpZiBhbGwgZGF0YS1yZWNvcmRzIGFyZSBsb2FkZWQgYW5kIGluaXRpYWxpemVkLlxuICAgICAgICAqIEBwcm9wZXJ0eSBpbml0aWFsaXplZFxuICAgICAgICAqIEB0eXBlIGJvb2xlYW5cbiAgICAgICAgIyMjIFxuICAgICAgICBAaW5pdGlhbGl6ZWQgPSBub1xuICAgICAgICBcbiAgICAjIyMqXG4gICAgKiBMb2FkcyBhbGwgZGF0YS1yZWNvcmQgZG9jdW1lbnRzLlxuICAgICpcbiAgICAqIEBtZXRob2QgbG9hZFxuICAgICMjIyAgXG4gICAgbG9hZDogLT5cbiAgICAgICAgQGRvY3VtZW50cyA9IERhdGFNYW5hZ2VyLmdldERvY3VtZW50c0J5VHlwZShcImRhdGFfcmVjb3JkXCIpXG5cbiAgICAjIyMqXG4gICAgKiBJbml0aWFsaXplcyBSZWNvcmRNYW5hZ2VyIGFuZCBhbGwgbG9hZGVkIGRhdGEtcmVjb3JkIGRvY3VtZW50cyBmb3IgdXNlLiBOZWVkcyB0byBiZVxuICAgICogY2FsbGVkIGJlZm9yZSBSZWNvcmRNYW5hZ2VyIGNhbiBiZSB1c2VkLlxuICAgICpcbiAgICAqIEBtZXRob2QgaW5pdGlhbGl6ZVxuICAgICMjIyAgXG4gICAgaW5pdGlhbGl6ZTogLT5cbiAgICAgICAgaWNvblNldHMgPSBbXVxuICAgICAgICBmb3IgZG9jdW1lbnQgaW4gQGRvY3VtZW50c1xuICAgICAgICAgICAgaWYgbm90IHRoaXNbZG9jdW1lbnQuaXRlbXMuY2F0ZWdvcnldP1xuICAgICAgICAgICAgICAgIHRoaXNbZG9jdW1lbnQuaXRlbXMuY2F0ZWdvcnldID0gW11cbiAgICAgICAgICAgICAgICB0aGlzW2RvY3VtZW50Lml0ZW1zLmNhdGVnb3J5ICsgXCJDb2xsZWN0aW9uXCJdID0gW11cbiAgICAgICAgICAgICAgICB0aGlzW2RvY3VtZW50Lml0ZW1zLmNhdGVnb3J5ICsgXCJBcnJheVwiXSA9IFtdXG4gICAgICAgICAgICAgICAgQGNvbGxlY3Rpb25Eb2N1bWVudHMucHVzaCh0aGlzW2RvY3VtZW50Lml0ZW1zLmNhdGVnb3J5ICsgXCJDb2xsZWN0aW9uXCJdKVxuICAgICAgICAgICAgaWYgZG9jdW1lbnQuaXRlbXMuaWQ/XG4gICAgICAgICAgICAgICAgdGhpc1tkb2N1bWVudC5pdGVtcy5jYXRlZ29yeV1bZG9jdW1lbnQuaXRlbXMuaWRdID0gZG9jdW1lbnQuaXRlbXMuZGF0YVxuICAgICAgICAgICAgICAgIHRoaXNbZG9jdW1lbnQuaXRlbXMuY2F0ZWdvcnldLnB1c2goZG9jdW1lbnQuaXRlbXMuZGF0YSlcbiAgICAgICAgICAgICAgICB0aGlzW2RvY3VtZW50Lml0ZW1zLmNhdGVnb3J5ICsgXCJDb2xsZWN0aW9uXCJdW2RvY3VtZW50Lml0ZW1zLmlkXSA9IGRvY3VtZW50XG4gICAgICAgICAgICAgICAgdGhpc1tkb2N1bWVudC5pdGVtcy5jYXRlZ29yeSArIFwiQ29sbGVjdGlvblwiXS5wdXNoKGRvY3VtZW50KVxuICAgICAgICAgICAgICAgIHRoaXNbZG9jdW1lbnQuaXRlbXMuY2F0ZWdvcnkgKyBcIkFycmF5XCJdLnB1c2goZG9jdW1lbnQuaXRlbXMuZGF0YSlcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5pdGVtcy5kYXRhLmluZGV4ID0gZG9jdW1lbnQuaXRlbXMuaWRcbiAgICAgICAgICAgIGlmIGRvY3VtZW50Lml0ZW1zLmRhdGE/IGFuZCBkb2N1bWVudC5pdGVtcy5kYXRhLmljb24/XG4gICAgICAgICAgICAgICAgaWYgaWNvblNldHMuaW5kZXhPZihkb2N1bWVudC5pdGVtcy5kYXRhLmljb24ubmFtZSkgPT0gLTFcbiAgICAgICAgICAgICAgICAgICAgaWNvblNldHMucHVzaChkb2N1bWVudC5pdGVtcy5kYXRhLmljb24ubmFtZSlcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICBpZiBkb2N1bWVudC5pdGVtcy5sb2NhbGl6YWJsZVN0cmluZ3M/XG4gICAgICAgICAgICAgICAgT2JqZWN0Lm1peGluKEBsb2NhbGl6YWJsZVN0cmluZ3MsIGRvY3VtZW50Lml0ZW1zLmxvY2FsaXphYmxlU3RyaW5ncylcbiAgICAgICAgICAgIFxuICAgICAgICBAc3lzdGVtID0gQHN5c3RlbVswXVxuICAgICAgICBAc3lzdGVtLmljb25TZXRzID0gaWNvblNldHNcbiAgICAgICAgXG4gICAgICAgIGlmIEBzeXN0ZW0uY29sb3JzXG4gICAgICAgICAgICBmb3IgY29sb3IsIGkgaW4gQHN5c3RlbS5jb2xvcnNcbiAgICAgICAgICAgICAgICBAc3lzdGVtLmNvbG9yc1tpXSA9IG5ldyBDb2xvcihjb2xvcilcbiAgICAgICAgXG4gICAgICAgIFxuICAgICAgICBAaW5pdGlhbGl6ZWQgPSB5ZXNcbiAgICBcbiAgICAjIyMqXG4gICAgKiBUcmFuc2xhdGVzIGFsbCBsb2NhbGl6YWJsZSBmaWVsZHMgZm9yIGVhY2ggZGF0YS1yZWNvcmQuXG4gICAgKlxuICAgICogQG1ldGhvZCB0cmFuc2xhdGVcbiAgICAjIyMgICAgICBcbiAgICB0cmFuc2xhdGU6IC0+XG4gICAgICAgIGlmIG5vdCBAdHJhbnNsYXRlZFxuICAgICAgICAgICAgQHRyYW5zbGF0ZWQgPSB5ZXNcbiAgICAgICAgICAgIGZvciBkb2N1bWVudCBpbiBAZG9jdW1lbnRzXG4gICAgICAgICAgICAgICAgaWYgZG9jdW1lbnQuaXRlbXMuZGF0YS5uYW1lPyBhbmQgZG9jdW1lbnQuaXRlbXMuZGF0YS5uYW1lLmxjSWQ/XG4gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50Lml0ZW1zLmRhdGEubmFtZSA9IGxjcyhkb2N1bWVudC5pdGVtcy5kYXRhLm5hbWUpXG4gICAgICAgICAgICAgICAgaWYgZG9jdW1lbnQuaXRlbXMuZGF0YS5kZXNjcmlwdGlvbj8gYW5kIGRvY3VtZW50Lml0ZW1zLmRhdGEuZGVzY3JpcHRpb24ubGNJZD9cbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuaXRlbXMuZGF0YS5kZXNjcmlwdGlvbiA9IGxjcyhkb2N1bWVudC5pdGVtcy5kYXRhLmRlc2NyaXB0aW9uKVxuICAgICAgICAgICAgICAgIGlmIGRvY3VtZW50Lml0ZW1zLmRhdGEucmVtb3ZlTWVzc2FnZT8gYW5kIGRvY3VtZW50Lml0ZW1zLmRhdGEucmVtb3ZlTWVzc2FnZS5sY0lkP1xuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5pdGVtcy5kYXRhLnJlbW92ZU1lc3NhZ2UgPSBsY3MoZG9jdW1lbnQuaXRlbXMuZGF0YS5yZW1vdmVNZXNzYWdlKVxuICAgICAgICAgICAgICAgIGlmIGRvY3VtZW50Lml0ZW1zLmRhdGEudXNpbmdNZXNzYWdlPyBhbmQgZG9jdW1lbnQuaXRlbXMuZGF0YS51c2luZ01lc3NhZ2UubGNJZD9cbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuaXRlbXMuZGF0YS51c2luZ01lc3NhZ2UgPSBsY3MoZG9jdW1lbnQuaXRlbXMuZGF0YS51c2luZ01lc3NhZ2UpXG4gICAgICBcblxud2luZG93LlJlY29yZE1hbmFnZXIgPSBuZXcgUmVjb3JkTWFuYWdlcigpIl19\n//# sourceURL=RecordManager_93.js",
9 + "content": "# ===================================================================\n#\n# Script: RecordManager\n#\n# $$COPYRIGHT$$\n#\n# ===================================================================\nclass RecordManager\n ###*\n * Manages the game's database and gives access to all data-records.\n *\n * @module gs\n * @class RecordManager\n * @memberof gs\n * @constructor\n ###\n constructor: ->\n ###*\n * Stores all data-record documents\n * @property documents\n * @type gs.Document[]\n ### \n @documents = null\n \n ###*\n * Stores all data-record documents by category > id.\n * @property collectionDocuments\n * @type gs.Document[][]\n ### \n @collectionDocuments = []\n \n ###*\n * Localizable strings of all data-record documents.\n * @property localizableStrings\n * @type Object\n ### \n @localizableStrings = {}\n \n ###*\n * Indicates if all data-records are already translated.\n * @property translated\n * @type boolean\n ### \n @translated = no\n \n ###*\n * Indicates if all data-records are loaded and initialized.\n * @property initialized\n * @type boolean\n ### \n @initialized = no\n \n ###*\n * Loads all data-record documents.\n *\n * @method load\n ### \n load: ->\n @documents = DataManager.getDocumentsByType(\"data_record\")\n\n ###*\n * Initializes RecordManager and all loaded data-record documents for use. Needs to be\n * called before RecordManager can be used.\n *\n * @method initialize\n ### \n initialize: ->\n iconSets = []\n for document in @documents\n if not this[document.items.category]?\n this[document.items.category] = []\n this[document.items.category + \"Collection\"] = []\n this[document.items.category + \"Array\"] = []\n @collectionDocuments.push(this[document.items.category + \"Collection\"])\n if document.items.id?\n this[document.items.category][document.items.id] = document.items.data\n this[document.items.category].push(document.items.data)\n this[document.items.category + \"Collection\"][document.items.id] = document\n this[document.items.category + \"Collection\"].push(document)\n this[document.items.category + \"Array\"].push(document.items.data)\n document.items.data.index = document.items.id\n if document.items.data? and document.items.data.icon?\n if iconSets.indexOf(document.items.data.icon.name) == -1\n iconSets.push(document.items.data.icon.name)\n \n if document.items.localizableStrings?\n Object.mixin(@localizableStrings, document.items.localizableStrings)\n \n @system = @system[0]\n @system.iconSets = iconSets\n \n if @system.colors\n for color, i in @system.colors\n @system.colors[i] = new Color(color)\n \n for objectPosition in @system.objectPositions\n if !objectPosition then continue\n objectPosition.func = eval(\"(function(object, params){\" + objectPosition.script + \"})\")\n \n @initialized = yes\n \n ###*\n * Translates all localizable fields for each data-record.\n *\n * @method translate\n ### \n translate: ->\n if not @translated\n @translated = yes\n for document in @documents\n if document.items.data.name? and document.items.data.name.lcId?\n document.items.data.name = lcs(document.items.data.name)\n if document.items.data.description? and document.items.data.description.lcId?\n document.items.data.description = lcs(document.items.data.description)\n if document.items.data.removeMessage? and document.items.data.removeMessage.lcId?\n document.items.data.removeMessage = lcs(document.items.data.removeMessage)\n if document.items.data.usingMessage? and document.items.data.usingMessage.lcId?\n document.items.data.usingMessage = lcs(document.items.data.usingMessage)\n \n\nwindow.RecordManager = new RecordManager()",
10 + "compiledContent": "var RecordManager;\n\nRecordManager = (function() {\n\n /**\n * Manages the game's database and gives access to all data-records.\n *\n * @module gs\n * @class RecordManager\n * @memberof gs\n * @constructor\n */\n function RecordManager() {\n\n /**\n * Stores all data-record documents\n * @property documents\n * @type gs.Document[]\n */\n this.documents = null;\n\n /**\n * Stores all data-record documents by category > id.\n * @property collectionDocuments\n * @type gs.Document[][]\n */\n this.collectionDocuments = [];\n\n /**\n * Localizable strings of all data-record documents.\n * @property localizableStrings\n * @type Object\n */\n this.localizableStrings = {};\n\n /**\n * Indicates if all data-records are already translated.\n * @property translated\n * @type boolean\n */\n this.translated = false;\n\n /**\n * Indicates if all data-records are loaded and initialized.\n * @property initialized\n * @type boolean\n */\n this.initialized = false;\n }\n\n\n /**\n * Loads all data-record documents.\n *\n * @method load\n */\n\n RecordManager.prototype.load = function() {\n return this.documents = DataManager.getDocumentsByType(\"data_record\");\n };\n\n\n /**\n * Initializes RecordManager and all loaded data-record documents for use. Needs to be\n * called before RecordManager can be used.\n *\n * @method initialize\n */\n\n RecordManager.prototype.initialize = function() {\n var color, document, i, iconSets, j, k, l, len, len1, len2, objectPosition, ref, ref1, ref2;\n iconSets = [];\n ref = this.documents;\n for (j = 0, len = ref.length; j < len; j++) {\n document = ref[j];\n if (this[document.items.category] == null) {\n this[document.items.category] = [];\n this[document.items.category + \"Collection\"] = [];\n this[document.items.category + \"Array\"] = [];\n this.collectionDocuments.push(this[document.items.category + \"Collection\"]);\n }\n if (document.items.id != null) {\n this[document.items.category][document.items.id] = document.items.data;\n this[document.items.category].push(document.items.data);\n this[document.items.category + \"Collection\"][document.items.id] = document;\n this[document.items.category + \"Collection\"].push(document);\n this[document.items.category + \"Array\"].push(document.items.data);\n document.items.data.index = document.items.id;\n }\n if ((document.items.data != null) && (document.items.data.icon != null)) {\n if (iconSets.indexOf(document.items.data.icon.name) === -1) {\n iconSets.push(document.items.data.icon.name);\n }\n }\n if (document.items.localizableStrings != null) {\n Object.mixin(this.localizableStrings, document.items.localizableStrings);\n }\n }\n this.system = this.system[0];\n this.system.iconSets = iconSets;\n if (this.system.colors) {\n ref1 = this.system.colors;\n for (i = k = 0, len1 = ref1.length; k < len1; i = ++k) {\n color = ref1[i];\n this.system.colors[i] = new Color(color);\n }\n }\n ref2 = this.system.objectPositions;\n for (l = 0, len2 = ref2.length; l < len2; l++) {\n objectPosition = ref2[l];\n if (!objectPosition) {\n continue;\n }\n objectPosition.func = eval(\"(function(object, params){\" + objectPosition.script + \"})\");\n }\n return this.initialized = true;\n };\n\n\n /**\n * Translates all localizable fields for each data-record.\n *\n * @method translate\n */\n\n RecordManager.prototype.translate = function() {\n var document, j, len, ref, results;\n if (!this.translated) {\n this.translated = true;\n ref = this.documents;\n results = [];\n for (j = 0, len = ref.length; j < len; j++) {\n document = ref[j];\n if ((document.items.data.name != null) && (document.items.data.name.lcId != null)) {\n document.items.data.name = lcs(document.items.data.name);\n }\n if ((document.items.data.description != null) && (document.items.data.description.lcId != null)) {\n document.items.data.description = lcs(document.items.data.description);\n }\n if ((document.items.data.removeMessage != null) && (document.items.data.removeMessage.lcId != null)) {\n document.items.data.removeMessage = lcs(document.items.data.removeMessage);\n }\n if ((document.items.data.usingMessage != null) && (document.items.data.usingMessage.lcId != null)) {\n results.push(document.items.data.usingMessage = lcs(document.items.data.usingMessage));\n } else {\n results.push(void 0);\n }\n }\n return results;\n }\n };\n\n return RecordManager;\n\n})();\n\nwindow.RecordManager = new RecordManager();\n\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLElBQUE7O0FBQU07O0FBQ0Y7Ozs7Ozs7O0VBUWEsdUJBQUE7O0FBQ1Q7Ozs7O0lBS0EsSUFBQyxDQUFBLFNBQUQsR0FBYTs7QUFFYjs7Ozs7SUFLQSxJQUFDLENBQUEsbUJBQUQsR0FBdUI7O0FBRXZCOzs7OztJQUtBLElBQUMsQ0FBQSxrQkFBRCxHQUFzQjs7QUFFdEI7Ozs7O0lBS0EsSUFBQyxDQUFBLFVBQUQsR0FBYzs7QUFFZDs7Ozs7SUFLQSxJQUFDLENBQUEsV0FBRCxHQUFlO0VBbENOOzs7QUFvQ2I7Ozs7OzswQkFLQSxJQUFBLEdBQU0sU0FBQTtXQUNGLElBQUMsQ0FBQSxTQUFELEdBQWEsV0FBVyxDQUFDLGtCQUFaLENBQStCLGFBQS9CO0VBRFg7OztBQUdOOzs7Ozs7OzBCQU1BLFVBQUEsR0FBWSxTQUFBO0FBQ1IsUUFBQTtJQUFBLFFBQUEsR0FBVztBQUNYO0FBQUEsU0FBQSxxQ0FBQTs7TUFDSSxJQUFPLHFDQUFQO1FBQ0ksSUFBSyxDQUFBLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBZixDQUFMLEdBQWdDO1FBQ2hDLElBQUssQ0FBQSxRQUFRLENBQUMsS0FBSyxDQUFDLFFBQWYsR0FBMEIsWUFBMUIsQ0FBTCxHQUErQztRQUMvQyxJQUFLLENBQUEsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFmLEdBQTBCLE9BQTFCLENBQUwsR0FBMEM7UUFDMUMsSUFBQyxDQUFBLG1CQUFtQixDQUFDLElBQXJCLENBQTBCLElBQUssQ0FBQSxRQUFRLENBQUMsS0FBSyxDQUFDLFFBQWYsR0FBMEIsWUFBMUIsQ0FBL0IsRUFKSjs7TUFLQSxJQUFHLHlCQUFIO1FBQ0ksSUFBSyxDQUFBLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBZixDQUF5QixDQUFBLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBZixDQUE5QixHQUFtRCxRQUFRLENBQUMsS0FBSyxDQUFDO1FBQ2xF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QkFBQTs7QUFQSjtxQkFGSjs7RUFETzs7Ozs7O0FBY2YsTUFBTSxDQUFDLGFBQVAsR0FBMkIsSUFBQSxhQUFBLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiNcbiMgICBTY3JpcHQ6IFJlY29yZE1hbmFnZXJcbiNcbiMgICAkJENPUFlSSUdIVCQkXG4jXG4jID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbmNsYXNzIFJlY29yZE1hbmFnZXJcbiAgICAjIyMqXG4gICAgKiBNYW5hZ2VzIHRoZSBnYW1lJ3MgZGF0YWJhc2UgYW5kIGdpdmVzIGFjY2VzcyB0byBhbGwgZGF0YS1yZWNvcmRzLlxuICAgICpcbiAgICAqIEBtb2R1bGUgZ3NcbiAgICAqIEBjbGFzcyBSZWNvcmRNYW5hZ2VyXG4gICAgKiBAbWVtYmVyb2YgZ3NcbiAgICAqIEBjb25zdHJ1Y3RvclxuICAgICMjI1xuICAgIGNvbnN0cnVjdG9yOiAtPlxuICAgICAgICAjIyMqXG4gICAgICAgICogU3RvcmVzIGFsbCBkYXRhLXJlY29yZCBkb2N1bWVudHNcbiAgICAgICAgKiBAcHJvcGVydHkgZG9jdW1lbnRzXG4gICAgICAgICogQHR5cGUgZ3MuRG9jdW1lbnRbXVxuICAgICAgICAjIyMgXG4gICAgICAgIEBkb2N1bWVudHMgPSBudWxsXG4gICAgICAgIFxuICAgICAgICAjIyMqXG4gICAgICAgICogU3RvcmVzIGFsbCBkYXRhLXJlY29yZCBkb2N1bWVudHMgYnkgY2F0ZWdvcnkgPiBpZC5cbiAgICAgICAgKiBAcHJvcGVydHkgY29sbGVjdGlvbkRvY3VtZW50c1xuICAgICAgICAqIEB0eXBlIGdzLkRvY3VtZW50W11bXVxuICAgICAgICAjIyMgXG4gICAgICAgIEBjb2xsZWN0aW9uRG9jdW1lbnRzID0gW11cbiAgICAgICAgXG4gICAgICAgICMjIypcbiAgICAgICAgKiBMb2NhbGl6YWJsZSBzdHJpbmdzIG9mIGFsbCBkYXRhLXJlY29yZCBkb2N1bWVudHMuXG4gICAgICAgICogQHByb3BlcnR5IGxvY2FsaXphYmxlU3RyaW5nc1xuICAgICAgICAqIEB0eXBlIE9iamVjdFxuICAgICAgICAjIyMgXG4gICAgICAgIEBsb2NhbGl6YWJsZVN0cmluZ3MgPSB7fVxuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIEluZGljYXRlcyBpZiBhbGwgZGF0YS1yZWNvcmRzIGFyZSBhbHJlYWR5IHRyYW5zbGF0ZWQuXG4gICAgICAgICogQHByb3BlcnR5IHRyYW5zbGF0ZWRcbiAgICAgICAgKiBAdHlwZSBib29sZWFuXG4gICAgICAgICMjIyBcbiAgICAgICAgQHRyYW5zbGF0ZWQgPSBub1xuICAgICAgICBcbiAgICAgICAgIyMjKlxuICAgICAgICAqIEluZGljYXRlcyBpZiBhbGwgZGF0YS1yZWNvcmRzIGFyZSBsb2FkZWQgYW5kIGluaXRpYWxpemVkLlxuICAgICAgICAqIEBwcm9wZXJ0eSBpbml0aWFsaXplZFxuICAgICAgICAqIEB0eXBlIGJvb2xlYW5cbiAgICAgICAgIyMjIFxuICAgICAgICBAaW5pdGlhbGl6ZWQgPSBub1xuICAgICAgICBcbiAgICAjIyMqXG4gICAgKiBMb2FkcyBhbGwgZGF0YS1yZWNvcmQgZG9jdW1lbnRzLlxuICAgICpcbiAgICAqIEBtZXRob2QgbG9hZFxuICAgICMjIyAgXG4gICAgbG9hZDogLT5cbiAgICAgICAgQGRvY3VtZW50cyA9IERhdGFNYW5hZ2VyLmdldERvY3VtZW50c0J5VHlwZShcImRhdGFfcmVjb3JkXCIpXG5cbiAgICAjIyMqXG4gICAgKiBJbml0aWFsaXplcyBSZWNvcmRNYW5hZ2VyIGFuZCBhbGwgbG9hZGVkIGRhdGEtcmVjb3JkIGRvY3VtZW50cyBmb3IgdXNlLiBOZWVkcyB0byBiZVxuICAgICogY2FsbGVkIGJlZm9yZSBSZWNvcmRNYW5hZ2VyIGNhbiBiZSB1c2VkLlxuICAgICpcbiAgICAqIEBtZXRob2QgaW5pdGlhbGl6ZVxuICAgICMjIyAgXG4gICAgaW5pdGlhbGl6ZTogLT5cbiAgICAgICAgaWNvblNldHMgPSBbXVxuICAgICAgICBmb3IgZG9jdW1lbnQgaW4gQGRvY3VtZW50c1xuICAgICAgICAgICAgaWYgbm90IHRoaXNbZG9jdW1lbnQuaXRlbXMuY2F0ZWdvcnldP1xuICAgICAgICAgICAgICAgIHRoaXNbZG9jdW1lbnQuaXRlbXMuY2F0ZWdvcnldID0gW11cbiAgICAgICAgICAgICAgICB0aGlzW2RvY3VtZW50Lml0ZW1zLmNhdGVnb3J5ICsgXCJDb2xsZWN0aW9uXCJdID0gW11cbiAgICAgICAgICAgICAgICB0aGlzW2RvY3VtZW50Lml0ZW1zLmNhdGVnb3J5ICsgXCJBcnJheVwiXSA9IFtdXG4gICAgICAgICAgICAgICAgQGNvbGxlY3Rpb25Eb2N1bWVudHMucHVzaCh0aGlzW2RvY3VtZW50Lml0ZW1zLmNhdGVnb3J5ICsgXCJDb2xsZWN0aW9uXCJdKVxuICAgICAgICAgICAgaWYgZG9jdW1lbnQuaXRlbXMuaWQ/XG4gICAgICAgICAgICAgICAgdGhpc1tkb2N1bWVudC5pdGVtcy5jYXRlZ29yeV1bZG9jdW1lbnQuaXRlbXMuaWRdID0gZG9jdW1lbnQuaXRlbXMuZGF0YVxuICAgICAgICAgICAgICAgIHRoaXNbZG9jdW1lbnQuaXRlbXMuY2F0ZWdvcnldLnB1c2goZG9jdW1lbnQuaXRlbXMuZGF0YSlcbiAgICAgICAgICAgICAgICB0aGlzW2RvY3VtZW50Lml0ZW1zLmNhdGVnb3J5ICsgXCJDb2xsZWN0aW9uXCJdW2RvY3VtZW50Lml0ZW1zLmlkXSA9IGRvY3VtZW50XG4gICAgICAgICAgICAgICAgdGhpc1tkb2N1bWVudC5pdGVtcy5jYXRlZ29yeSArIFwiQ29sbGVjdGlvblwiXS5wdXNoKGRvY3VtZW50KVxuICAgICAgICAgICAgICAgIHRoaXNbZG9jdW1lbnQuaXRlbXMuY2F0ZWdvcnkgKyBcIkFycmF5XCJdLnB1c2goZG9jdW1lbnQuaXRlbXMuZGF0YSlcbiAgICAgICAgICAgICAgICBkb2N1bWVudC5pdGVtcy5kYXRhLmluZGV4ID0gZG9jdW1lbnQuaXRlbXMuaWRcbiAgICAgICAgICAgIGlmIGRvY3VtZW50Lml0ZW1zLmRhdGE/IGFuZCBkb2N1bWVudC5pdGVtcy5kYXRhLmljb24/XG4gICAgICAgICAgICAgICAgaWYgaWNvblNldHMuaW5kZXhPZihkb2N1bWVudC5pdGVtcy5kYXRhLmljb24ubmFtZSkgPT0gLTFcbiAgICAgICAgICAgICAgICAgICAgaWNvblNldHMucHVzaChkb2N1bWVudC5pdGVtcy5kYXRhLmljb24ubmFtZSlcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICBpZiBkb2N1bWVudC5pdGVtcy5sb2NhbGl6YWJsZVN0cmluZ3M/XG4gICAgICAgICAgICAgICAgT2JqZWN0Lm1peGluKEBsb2NhbGl6YWJsZVN0cmluZ3MsIGRvY3VtZW50Lml0ZW1zLmxvY2FsaXphYmxlU3RyaW5ncylcbiAgICAgICAgICAgIFxuICAgICAgICBAc3lzdGVtID0gQHN5c3RlbVswXVxuICAgICAgICBAc3lzdGVtLmljb25TZXRzID0gaWNvblNldHNcbiAgICAgICAgXG4gICAgICAgIGlmIEBzeXN0ZW0uY29sb3JzXG4gICAgICAgICAgICBmb3IgY29sb3IsIGkgaW4gQHN5c3RlbS5jb2xvcnNcbiAgICAgICAgICAgICAgICBAc3lzdGVtLmNvbG9yc1tpXSA9IG5ldyBDb2xvcihjb2xvcilcbiAgICAgICAgXG4gICAgICAgIGZvciBvYmplY3RQb3NpdGlvbiBpbiBAc3lzdGVtLm9iamVjdFBvc2l0aW9uc1xuICAgICAgICAgICAgaWYgIW9iamVjdFBvc2l0aW9uIHRoZW4gY29udGludWVcbiAgICAgICAgICAgIG9iamVjdFBvc2l0aW9uLmZ1bmMgPSBldmFsKFwiKGZ1bmN0aW9uKG9iamVjdCwgcGFyYW1zKXtcIiArIG9iamVjdFBvc2l0aW9uLnNjcmlwdCArIFwifSlcIilcbiAgICAgICAgICAgIFxuICAgICAgICBAaW5pdGlhbGl6ZWQgPSB5ZXNcbiAgICBcbiAgICAjIyMqXG4gICAgKiBUcmFuc2xhdGVzIGFsbCBsb2NhbGl6YWJsZSBmaWVsZHMgZm9yIGVhY2ggZGF0YS1yZWNvcmQuXG4gICAgKlxuICAgICogQG1ldGhvZCB0cmFuc2xhdGVcbiAgICAjIyMgICAgICBcbiAgICB0cmFuc2xhdGU6IC0+XG4gICAgICAgIGlmIG5vdCBAdHJhbnNsYXRlZFxuICAgICAgICAgICAgQHRyYW5zbGF0ZWQgPSB5ZXNcbiAgICAgICAgICAgIGZvciBkb2N1bWVudCBpbiBAZG9jdW1lbnRzXG4gICAgICAgICAgICAgICAgaWYgZG9jdW1lbnQuaXRlbXMuZGF0YS5uYW1lPyBhbmQgZG9jdW1lbnQuaXRlbXMuZGF0YS5uYW1lLmxjSWQ/XG4gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50Lml0ZW1zLmRhdGEubmFtZSA9IGxjcyhkb2N1bWVudC5pdGVtcy5kYXRhLm5hbWUpXG4gICAgICAgICAgICAgICAgaWYgZG9jdW1lbnQuaXRlbXMuZGF0YS5kZXNjcmlwdGlvbj8gYW5kIGRvY3VtZW50Lml0ZW1zLmRhdGEuZGVzY3JpcHRpb24ubGNJZD9cbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuaXRlbXMuZGF0YS5kZXNjcmlwdGlvbiA9IGxjcyhkb2N1bWVudC5pdGVtcy5kYXRhLmRlc2NyaXB0aW9uKVxuICAgICAgICAgICAgICAgIGlmIGRvY3VtZW50Lml0ZW1zLmRhdGEucmVtb3ZlTWVzc2FnZT8gYW5kIGRvY3VtZW50Lml0ZW1zLmRhdGEucmVtb3ZlTWVzc2FnZS5sY0lkP1xuICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5pdGVtcy5kYXRhLnJlbW92ZU1lc3NhZ2UgPSBsY3MoZG9jdW1lbnQuaXRlbXMuZGF0YS5yZW1vdmVNZXNzYWdlKVxuICAgICAgICAgICAgICAgIGlmIGRvY3VtZW50Lml0ZW1zLmRhdGEudXNpbmdNZXNzYWdlPyBhbmQgZG9jdW1lbnQuaXRlbXMuZGF0YS51c2luZ01lc3NhZ2UubGNJZD9cbiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuaXRlbXMuZGF0YS51c2luZ01lc3NhZ2UgPSBsY3MoZG9jdW1lbnQuaXRlbXMuZGF0YS51c2luZ01lc3NhZ2UpXG4gICAgICBcblxud2luZG93LlJlY29yZE1hbmFnZXIgPSBuZXcgUmVjb3JkTWFuYWdlcigpIl19\n//# sourceURL=RecordManager_93.js",
11 11 "parentId": "C0268943K60B3A42B7SA6F1EDDCF2F642FD7"
12 12 },
13 13 "summary": [