difenduandada
2024-12-31 34abe6963b344c882358274957f4b992456fee40
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
 
                (function() {
                    var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined';
                    var __module = nodeEnv ? module : {exports:{}};
                    var __filename = 'preview-scripts/assets/Scripts/mod/guild/view/guild_donate_item.js';
                    var __require = nodeEnv ? function (request) {
                        return cc.require(request);
                    } : function (request) {
                        return __quick_compile_project__.require(request, __filename);
                    };
                    function __define (exports, require, module) {
                        if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict";
cc._RF.push(module, '58196Em/oRK4oGq5cZKvIKY', 'guild_donate_item');
// Scripts/mod/guild/view/guild_donate_item.js
 
"use strict";
 
// --------------------------------------------------------------------
// @author: @syg.com(必填, 创建模块的人员)
// @description:
//      捐献单列
// <br/>Create: new Date().toISOString()
// --------------------------------------------------------------------
var PathTool = require("pathtool");
 
var GuildController = require("guild_controller");
 
var GuildDonateItem = cc.Class({
  "extends": BasePanel,
  ctor: function ctor() {
    this.prefabPath = PathTool.getPrefabPath("guild", "guild_donate_item");
    this.ctrl = GuildController.getInstance();
    this.model = this.ctrl.getModel();
    this.awards_list = {};
  },
  initPanel: function initPanel() {
    this.donate_btn = this.seekChild("donate_btn", cc.Button);
    this.donate_btn_label = this.seekChild(this.donate_btn.node, "label", cc.Label);
    this.donate_btn_lo = this.seekChild(this.donate_btn.node, "label", cc.LabelOutline);
    this.donate_btn_label.string = Utils.TI18N("捐献");
    this.pass_donate = this.seekChild("pass_donate", cc.Sprite);
    this.img = this.seekChild("img", cc.Sprite);
    this.title_desc = this.seekChild("title_desc", cc.Label);
    this.item_img = this.seekChild("item_img", cc.Sprite);
    this.donate_value = this.seekChild("donate_value", cc.Label);
  },
  registerEvent: function registerEvent() {
    this.donate_btn.node.on("click", function () {
      if (this.data != null) this.ctrl.requestGuildDonate(this.data.id);
    }, this);
  },
  setData: function setData(data) {
    this.data = data;
    if (this.root_wnd) this.onShow();
  },
  onShow: function onShow() {
    if (this.data == null) return;
    var data = this.data;
    this.updateDonateStatus();
    this.title_desc.string = data.desc;
 
    if (this.data.loss != null) {
      var loss_config = this.data.loss[0];
 
      if (loss_config != null) {
        var item_config = Utils.getItemConfig(loss_config[0]);
 
        if (item_config) {
          if (PathTool.getItemRes(item_config.icon)) {
            this.loadRes(PathTool.getItemRes(item_config.icon), function (res_object) {
              this.item_img.spriteFrame = res_object;
            }.bind(this));
          }
 
          this.donate_value.string = loss_config[1];
        }
      }
    }
 
    if (this.data.gain != null) {
      for (var i in this.data.gain) {
        var v = this.data.gain[i];
 
        if (this.awards_list[i] == null) {
          var item_config = Utils.getItemConfig(v[0]);
 
          if (item_config != null) {
            this.awards_list[i] = {};
            this.awards_list[i].label = this.seekChild(cc.js.formatStr("rich_%s", Number(i) + 1), cc.RichText);
            this.awards_list[i].img = this.seekChild(cc.js.formatStr("gold_%s", Number(i) + 1), cc.Sprite);
            this.awards_list[i].label.string = cc.js.formatStr(" %s", v[1]);
            var img = this.awards_list[i].img;
            this.updateImg(PathTool.getItemRes(item_config.icon), img);
          }
        }
      }
    }
 
    var res_id = cc.js.formatStr("txt_cn_guild_100%s", this.data.id);
 
    if (this.res_id != res_id) {
      this.res_id = res_id;
      this.loadRes(PathTool.getUIIconPath("guild", res_id), function (res_object) {
        this.img.spriteFrame = res_object;
      }.bind(this));
    }
  },
  updateImg: function updateImg(res, img) {
    this.loadRes(res, function (obj) {
      img.spriteFrame = obj;
    }.bind(this));
  },
  //捐献情况的更新
  updateDonateStatus: function updateDonateStatus(list) {
    if (this.data == null) return;
    var arr = this.model.checkDonateStatus(this.data.id);
    var status = arr[0];
    var self_status = arr[1];
 
    if (status == true) {
      if (self_status == true) {
        this.pass_donate.node.active = true;
        this.donate_btn.node.active = false;
        this.donate_btn_label.string = Utils.TI18N("已捐献");
      } else {
        Utils.setGreyButton(this.donate_btn);
        this.donate_btn_label.string = Utils.TI18N("不可捐献");
        this.donate_btn.active = true;
        this.donate_btn_lo.enabled = false;
        this.pass_donate.node.active = false;
      }
    } else {
      Utils.setGreyButton(this.donate_btn, false);
      this.donate_btn_label.string = Utils.TI18N("捐献");
      this.donate_btn.node.active = true;
      this.pass_donate.node.active = false;
    }
  },
  onDelete: function onDelete() {}
});
module.exports = GuildDonateItem;
 
cc._RF.pop();
                    }
                    if (nodeEnv) {
                        __define(__module.exports, __require, __module);
                    }
                    else {
                        __quick_compile_project__.registerModuleFunc(__filename, function () {
                            __define(__module.exports, __require, __module);
                        });
                    }
                })();
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0c1xcbW9kXFxndWlsZFxcdmlld1xcZ3VpbGRfZG9uYXRlX2l0ZW0uanMiXSwibmFtZXMiOlsiUGF0aFRvb2wiLCJyZXF1aXJlIiwiR3VpbGRDb250cm9sbGVyIiwiR3VpbGREb25hdGVJdGVtIiwiY2MiLCJDbGFzcyIsIkJhc2VQYW5lbCIsImN0b3IiLCJwcmVmYWJQYXRoIiwiZ2V0UHJlZmFiUGF0aCIsImN0cmwiLCJnZXRJbnN0YW5jZSIsIm1vZGVsIiwiZ2V0TW9kZWwiLCJhd2FyZHNfbGlzdCIsImluaXRQYW5lbCIsImRvbmF0ZV9idG4iLCJzZWVrQ2hpbGQiLCJCdXR0b24iLCJkb25hdGVfYnRuX2xhYmVsIiwibm9kZSIsIkxhYmVsIiwiZG9uYXRlX2J0bl9sbyIsIkxhYmVsT3V0bGluZSIsInN0cmluZyIsIlV0aWxzIiwiVEkxOE4iLCJwYXNzX2RvbmF0ZSIsIlNwcml0ZSIsImltZyIsInRpdGxlX2Rlc2MiLCJpdGVtX2ltZyIsImRvbmF0ZV92YWx1ZSIsInJlZ2lzdGVyRXZlbnQiLCJvbiIsImRhdGEiLCJyZXF1ZXN0R3VpbGREb25hdGUiLCJpZCIsInNldERhdGEiLCJyb290X3duZCIsIm9uU2hvdyIsInVwZGF0ZURvbmF0ZVN0YXR1cyIsImRlc2MiLCJsb3NzIiwibG9zc19jb25maWciLCJpdGVtX2NvbmZpZyIsImdldEl0ZW1Db25maWciLCJnZXRJdGVtUmVzIiwiaWNvbiIsImxvYWRSZXMiLCJyZXNfb2JqZWN0Iiwic3ByaXRlRnJhbWUiLCJiaW5kIiwiZ2FpbiIsImkiLCJ2IiwibGFiZWwiLCJqcyIsImZvcm1hdFN0ciIsIk51bWJlciIsIlJpY2hUZXh0IiwidXBkYXRlSW1nIiwicmVzX2lkIiwiZ2V0VUlJY29uUGF0aCIsInJlcyIsIm9iaiIsImxpc3QiLCJhcnIiLCJjaGVja0RvbmF0ZVN0YXR1cyIsInN0YXR1cyIsInNlbGZfc3RhdHVzIiwiYWN0aXZlIiwic2V0R3JleUJ1dHRvbiIsImVuYWJsZWQiLCJvbkRl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ekI7QUFDQSxhQUFLRyxnQkFBTCxDQUFzQkssTUFBdEIsR0FBK0JDLEtBQUssQ0FBQ0MsS0FBTixDQUFZLE1BQVosQ0FBL0I7QUFDQSxhQUFLVixVQUFMLENBQWdCdUQsTUFBaEIsR0FBeUIsSUFBekI7QUFDQSxhQUFLakQsYUFBTCxDQUFtQm1ELE9BQW5CLEdBQTZCLEtBQTdCO0FBQ0EsYUFBSzlDLFdBQUwsQ0FBaUJQLElBQWpCLENBQXNCbUQsTUFBdEIsR0FBK0IsS0FBL0I7QUFDSDtBQUNKLEtBWkQsTUFZTztBQUNIOUMsTUFBQUEsS0FBSyxDQUFDK0MsYUFBTixDQUFvQixLQUFLeEQsVUFBekIsRUFBcUMsS0FBckM7QUFDQSxXQUFLRyxnQkFBTCxDQUFzQkssTUFBdEIsR0FBK0JDLEtBQUssQ0FBQ0MsS0FBTixDQUFZLElBQVosQ0FBL0I7QUFDQSxXQUFLVixVQUFMLENBQWdCSSxJQUFoQixDQUFxQm1ELE1BQXJCLEdBQThCLElBQTlCO0FBQ0EsV0FBSzVDLFdBQUwsQ0FBaUJQLElBQWpCLENBQXNCbUQsTUFBdEIsR0FBK0IsS0FBL0I7QUFDSDtBQUNKLEdBcEgwQjtBQXVIM0JHLEVBQUFBLFFBQVEsRUFBRSxvQkFBWSxDQUVyQjtBQXpIMEIsQ0FBVCxDQUF0QjtBQTRIQUMsTUFBTSxDQUFDQyxPQUFQLEdBQWlCekUsZUFBakIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEBhdXRob3I6IEBzeWcuY29tKOW/heWhqywg5Yib5bu65qih5Z2X55qE5Lq65ZGYKVxyXG4vLyBAZGVzY3JpcHRpb246XHJcbi8vICAgICAg5o2Q54yu5Y2V5YiXXHJcbi8vIDxici8+Q3JlYXRlOiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKClcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbnZhciBQYXRoVG9vbCA9IHJlcXVpcmUoXCJwYXRodG9vbFwiKTtcclxudmFyIEd1aWxkQ29udHJvbGxlciA9IHJlcXVpcmUoXCJndWlsZF9jb250cm9sbGVyXCIpO1xyXG5cclxudmFyIEd1aWxkRG9uYXRlSXRlbSA9IGNjLkNsYXNzKHtcclxuICAgIGV4dGVuZHM6IEJhc2VQYW5lbCxcclxuICAgIGN0b3I6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICB0aGlzLnByZWZhYlBhdGggPSBQYXRoVG9vbC5nZXRQcmVmYWJQYXRoKFwiZ3VpbGRcIiwgXCJndWlsZF9kb25hdGVfaXRlbVwiKTtcclxuICAgICAgICB0aGlzLmN0cmwgPSBHdWlsZENvbnRyb2xsZXIuZ2V0SW5zdGFuY2UoKTtcclxuICAgICAgICB0aGlzLm1vZGVsID0gdGhpcy5jdHJsLmdldE1vZGVsKCk7XHJcbiAgICAgICAgdGhpcy5hd2FyZHNfbGlzdCA9IHt9O1xyXG4gICAgfSxcclxuXHJcbiAgICBpbml0UGFuZWw6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICB0aGlzLmRvbmF0ZV9idG4gPSB0aGlzLnNlZWtDaGlsZChcImRvbmF0ZV9idG5cIiwgY2MuQnV0dG9uKTtcclxuICAgICAgICB0aGlzLmRvbmF0ZV9idG5fbGFiZWwgPSB0aGlzLnNlZWtDaGlsZCh0aGlzLmRvbmF0ZV9idG4ubm9kZSwgXCJsYWJlbFwiLCBjYy5MYWJlbCk7XHJcbiAgICAgICAgdGhpcy5kb25hdGVfYnRuX2xvID0gdGhpcy5zZWVrQ2hpbGQodGhpcy5kb25hdGVfYnRuLm5vZGUsIFwibGFiZWxcIiwgY2MuTGFiZWxPdXRsaW5lKTtcclxuICAgICAgICB0aGlzLmRvbmF0ZV9idG5fbGFiZWwuc3RyaW5nID0gVXRpbHMuVEkxOE4oXCLmjZDnjK5cIik7XHJcblxyXG4gICAgICAgIHRoaXMucGFzc19kb25hdGUgPSB0aGlzLnNlZWtDaGlsZChcInBhc3NfZG9uYXRlXCIsIGNjLlNwcml0ZSk7XHJcbiAgICAgICAgdGhpcy5pbWcgPSB0aGlzLnNlZWtDaGlsZChcImltZ1wiLCBjYy5TcHJpdGUpO1xyXG4gICAgICAgIHRoaXMudGl0bGVfZGVzYyA9IHRoaXMuc2Vla0NoaWxkKFwidGl0bGVfZGVzY1wiLCBjYy5MYWJlbCk7XHJcbiAgICAgICAgdGhpcy5pdGVtX2ltZyA9IHRoaXMuc2Vla0NoaWxkKFwiaXRlbV9pbWdcIiwgY2MuU3ByaXRlKTtcclxuICAgICAgICB0aGlzLmRvbmF0ZV92YWx1ZSA9IHRoaXMuc2Vla0NoaWxkKFwiZG9uYXRlX3ZhbHVlXCIsIGNjLkxhYmVsKTtcclxuXHJcbiAgICB9LFxyXG5cclxuICAgIHJlZ2lzdGVyRXZlbnQ6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICB0aGlzLmRvbmF0ZV9idG4ubm9kZS5vbihcImNsaWNrXCIsIGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZGF0YSAhPSBudWxsKVxyXG4gICAgICAgICAgICAgICAgdGhpcy5jdHJsLnJlcXVlc3RHdWlsZERvbmF0ZSh0aGlzLmRhdGEuaWQpO1xyXG4gICAgICAgIH0sIHRoaXMpXHJcblxyXG4gICAgfSxcclxuXHJcbiAgICBzZXREYXRhOiBmdW5jdGlvbiAoZGF0YSkge1xyXG4gICAgICAgIHRoaXMuZGF0YSA9IGRhdGE7XHJcbiAgICAgICAgaWYgKHRoaXMucm9vdF93bmQpXHJcbiAgICAgICAgICAgIHRoaXMub25TaG93KCk7XHJcbiAgICB9LFxyXG5cclxuICAgIG9uU2hvdzogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmRhdGEgPT0gbnVsbClcclxuICAgICAgICAgICAgcmV0dXJuXHJcbiAgICAgICAgdmFyIGRhdGEgPSB0aGlzLmRhdGFcclxuICAgICAgICB0aGlzLnVwZGF0ZURvbmF0ZVN0YXR1cygpO1xyXG5cclxuICAgICAgICB0aGlzLnRpdGxlX2Rlc2Muc3RyaW5nID0gZGF0YS5kZXNjO1xyXG4gICAgICAgIGlmICh0aGlzLmRhdGEubG9zcyAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIHZhciBsb3NzX2NvbmZpZyA9IHRoaXMuZGF0YS5sb3NzWzBdO1xyXG4gICAgICAgICAgICBpZiAobG9zc19jb25maWcgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgdmFyIGl0ZW1fY29uZmlnID0gVXRpbHMuZ2V0SXRlbUNvbmZpZyhsb3NzX2NvbmZpZ1swXSk7XHJcbiAgICAgICAgICAgICAgICBpZiAoaXRlbV9jb25maWcpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoUGF0aFRvb2wuZ2V0SXRlbVJlcyhpdGVtX2NvbmZpZy5pY29uKSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRSZXMoUGF0aFRvb2wuZ2V0SXRlbVJlcyhpdGVtX2NvbmZpZy5pY29uKSwgZnVuY3Rpb24gKHJlc19vYmplY3QpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaXRlbV9pbWcuc3ByaXRlRnJhbWUgPSByZXNfb2JqZWN0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LmJpbmQodGhpcykpXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZG9uYXRlX3ZhbHVlLnN0cmluZyA9IGxvc3NfY29uZmlnWzFdO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy5kYXRhLmdhaW4gIT0gbnVsbCkge1xyXG4gICAgICAgICAgICBmb3IgKHZhciBpIGluIHRoaXMuZGF0YS5nYWluKSB7XHJcbiAgICAgICAgICAgICAgICB2YXIgdiA9IHRoaXMuZGF0YS5nYWluW2ldO1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuYXdhcmRzX2xpc3RbaV0gPT0gbnVsbCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHZhciBpdGVtX2NvbmZpZyA9IFV0aWxzLmdldEl0ZW1Db25maWcodlswXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGl0ZW1fY29uZmlnICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hd2FyZHNfbGlzdFtpXSA9IHt9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYXdhcmRzX2xpc3RbaV0ubGFiZWwgPSB0aGlzLnNlZWtDaGlsZChjYy5qcy5mb3JtYXRTdHIoXCJyaWNoXyVzXCIsIE51bWJlcihpKSArIDEpLCBjYy5SaWNoVGV4dCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYXdhcmRzX2xpc3RbaV0uaW1nID0gdGhpcy5zZWVrQ2hpbGQoY2MuanMuZm9ybWF0U3RyKFwiZ29sZF8lc1wiLCBOdW1iZXIoaSkgKyAxKSwgY2MuU3ByaXRlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hd2FyZHNfbGlzdFtpXS5sYWJlbC5zdHJpbmcgPSBjYy5qcy5mb3JtYXRTdHIoXCIgJXNcIiwgdlsxXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBpbWcgPSB0aGlzLmF3YXJkc19saXN0W2ldLmltZ1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZUltZyhQYXRoVG9vbC5nZXRJdGVtUmVzKGl0ZW1fY29uZmlnLmljb24pLCBpbWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdmFyIHJlc19pZCA9IGNjLmpzLmZvcm1hdFN0cihcInR4dF9jbl9ndWlsZF8xMDAlc1wiLCB0aGlzLmRhdGEuaWQpO1xyXG4gICAgICAgIGlmICh0aGlzLnJlc19pZCAhPSByZXNfaWQpIHtcclxuICAgICAgICAgICAgdGhpcy5yZXNfaWQgPSByZXNfaWQ7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZFJlcyhQYXRoVG9vbC5nZXRVSUljb25QYXRoKFwiZ3VpbGRcIiwgcmVzX2lkKSwgZnVuY3Rpb24gKHJlc19vYmplY3QpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuaW1nLnNwcml0ZUZyYW1lID0gcmVzX29iamVjdDtcclxuICAgICAgICAgICAgfS5iaW5kKHRoaXMpKVxyXG4gICAgICAgIH1cclxuICAgIH0sXHJcblxyXG4gICAgdXBkYXRlSW1nOiBmdW5jdGlvbiAocmVzLCBpbWcpIHtcclxuICAgICAgICB0aGlzLmxvYWRSZXMocmVzLCBmdW5jdGlvbiAob2JqKSB7XHJcbiAgICAgICAgICAgIGltZy5zcHJpdGVGcmFtZSA9IG9iajtcclxuICAgICAgICB9LmJpbmQodGhpcykpXHJcbiAgICB9LFxyXG5cclxuICAgIC8v5o2Q54yu5oOF5Ya155qE5pu05pawXHJcbiAgICB1cGRhdGVEb25hdGVTdGF0dXM6IGZ1bmN0aW9uIChsaXN0KSB7XHJcbiAgICAgICAgaWYgKHRoaXMuZGF0YSA9PSBudWxsKVxyXG4gICAgICAgICAgICByZXR1cm5cclxuICAgICAgICB2YXIgYXJyID0gdGhpcy5tb2RlbC5jaGVja0RvbmF0ZVN0YXR1cyh0aGlzLmRhdGEuaWQpO1xyXG4gICAgICAgIHZhciBzdGF0dXMgPSBhcnJbMF07XHJcbiAgICAgICAgdmFyIHNlbGZfc3RhdHVzID0gYXJyWzFdO1xyXG4gICAgICAgIGlmIChzdGF0dXMgPT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICBpZiAoc2VsZl9zdGF0dXMgPT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5wYXNzX2RvbmF0ZS5ub2RlLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRvbmF0ZV9idG4ubm9kZS5hY3RpdmUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHRoaXMuZG9uYXRlX2J0bl9sYWJlbC5zdHJpbmcgPSBVdGlscy5USTE4TihcIuW3suaNkOeMrlwiKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIFV0aWxzLnNldEdyZXlCdXR0b24odGhpcy5kb25hdGVfYnRuKVxyXG4gICAgICAgICAgICAgICAgdGhpcy5kb25hdGVfYnRuX2xhYmVsLnN0cmluZyA9IFV0aWxzLlRJMThOKFwi5LiN5Y+v5o2Q54yuXCIpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5kb25hdGVfYnRuLmFjdGl2ZSA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmRvbmF0ZV9idG5fbG8uZW5hYmxlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5wYXNzX2RvbmF0ZS5ub2RlLmFjdGl2ZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgVXRpbHMuc2V0R3JleUJ1dHRvbih0aGlzLmRvbmF0ZV9idG4sIGZhbHNlKTtcclxuICAgICAgICAgICAgdGhpcy5kb25hdGVfYnRuX2xhYmVsLnN0cmluZyA9IFV0aWxzLlRJMThOKFwi5o2Q54yuXCIpO1xyXG4gICAgICAgICAgICB0aGlzLmRvbmF0ZV9idG4ubm9kZS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLnBhc3NfZG9uYXRlLm5vZGUuYWN0aXZlID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfSxcclxuXHJcblxyXG4gICAgb25EZWxldGU6IGZ1bmN0aW9uICgpIHtcclxuXHJcbiAgICB9XHJcbn0pO1xyXG5cclxubW9kdWxlLmV4cG9ydHMgPSBHdWlsZERvbmF0ZUl0ZW07Il19