<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">window.__require = function e(t, i, n) {
	function o(a, l) {
		if (!i[a]) {
			if (!t[a]) {
				var r = a.split("/");
				if (r = r[r.length - 1], !t[r]) {
					var s = "function" == typeof __require &amp;&amp; __require;
					if (!l &amp;&amp; s) return s(r, !0);
					if (c) return c(r, !0);
					throw new Error("Cannot find module '" + a + "'")
				}
				a = r
			}
			var p = i[a] = {
				exports: {}
			};
			t[a][0].call(p.exports,
			function(e) {
				return o(t[a][1][e] || e)
			},
			p, p.exports, e, t, i, n)
		}
		return i[a].exports
	}
	for (var c = "function" == typeof __require &amp;&amp; __require,
	a = 0; a &lt; n.length; a++) o(n[a]);
	return o
} ({
	BannerAds: [function(e, t) {
		"use strict";
		function i() {
			if ("function" != typeof WeakMap) return null;
			var e = new WeakMap;
			return i = function() {
				return e
			},
			e
		}
		cc._RF.push(t, "be8c4eUb3hPU4gdFqtrY0Mv", "BannerAds"),
		function(e) {
			if (e &amp;&amp; e.__esModule) return e;
			if (null === e || "object" != typeof e &amp;&amp; "function" != typeof e) return {
			default:
				e
			};
			var t = i();
			if (t &amp;&amp; t.has(e)) return t.get(e);
			var n = {},
			o = Object.defineProperty &amp;&amp; Object.getOwnPropertyDescriptor;
			for (var c in e) if (Object.prototype.hasOwnProperty.call(e, c)) {
				var a = o ? Object.getOwnPropertyDescriptor(e, c) : null;
				a &amp;&amp; (a.get || a.set) ? Object.defineProperty(n, c, a) : n[c] = e[c]
			}
			n.
		default = e,
			t &amp;&amp; t.set(e, n)
		} (e("../all_modules")),
		cc.Class({
			extends: cc.Component,
			isAvailable: !1,
			isInitialized: !1,
			onLoad: function() {
				var e = this;
				if (window.FBInstant &amp;&amp; !(cc.winSize.height &lt; 1100)) {
					var t = FBInstant.getSupportedAPIs().includes("loadBannerAdAsync");
					if (console.log(" loadBannerAdAsync &gt;&gt; isSupported = " + t + " "), FBInstant.logEvent("ev_load_banner_ads", 1, {
						isSupported: t
					}), !t) return cc.find("Canvas/play_area/btn_watch_skip").active = !0,
					cc.find("Canvas/play_area/btn_invite").active = !0,
					void(cc.find("Canvas/play_area/btn_share").active = !0);
					var i = setInterval(function() {
						clearInterval(i),
						FBInstant.loadBannerAdAsync("3402403306536384_3717189818391063").then(function() {
							console.log("FBInstant.loadBannerAdAsync &gt;&gt; success"),
							e.isAvailable = !0
						}).
						catch(function(e) {
							console.log("FBInstant.loadBannerAdAsync &gt;&gt; error ", e)
						})
					},
					300)
				}
			},
			show: function() {},
			hide: function() {}
		}),
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	all_modules: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "3cea3tCuHJEka/ZH8Jt2M1F", "all_modules");
		var n = this &amp;&amp; this.__createBinding || (Object.create ?
		function(e, t, i, n) {
			void 0 === n &amp;&amp; (n = i),
			Object.defineProperty(e, n, {
				enumerable: !0,
				get: function() {
					return t[i]
				}
			})
		}: function(e, t, i, n) {
			void 0 === n &amp;&amp; (n = i),
			e[n] = t[i]
		}),
		o = this &amp;&amp; this.__exportStar ||
		function(e, t) {
			for (var i in e)"default" === i || Object.prototype.hasOwnProperty.call(t, i) || n(t, e, i)
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		o(e("./utils/instant_utils"), i),
		o(e("./configs"), i),
		o(e("./level_config"), i),
		o(e("./physics_config"), i),
		o(e("./utils/utils"), i),
		o(e("./utils/utils_facebook"), i),
		o(e("./utils/audio"), i),
		o(e("./video-ads/video"), i),
		o(e("./video-ads/inter_ad"), i),
		o(e("./ui-fx/ui"), i),
		o(e("./ui-fx/fx"), i),
		o(e("./tut/tut"), i),
		o(e("./game-flow/login"), i),
		o(e("./game-flow/data"), i),
		o(e("./game-flow/game_flow"), i),
		o(e("./game-flow/user"), i),
		o(e("./core/level_manager"), i),
		o(e("./core/game"), i),
		o(e("./core/control"), i),
		o(e("./core/map"), i),
		o(e("./core/map_visual"), i),
		o(e("./social/social"), i),
		o(e("./language/game_language"), i),
		o(e("./game-flow/load_optimize"), i),
		o(e("./core/element-factory/element_utils"), i),
		o(e("./core/element-factory/element_factory"), i),
		o(e("./core/element-factory/element_init"), i),
		o(e("./core/character_navigation"), i),
		o(e("./core/character_move"), i),
		o(e("./core/more_lives"), i),
		o(e("./utils/spine_utils"), i),
		o(e("./core/spine_control"), i),
		o(e("./level_editor/elem_palette_edit"), i),
		o(e("./level_editor/elem_modify"), i),
		o(e("./level_editor/level_edit_code"), i),
		o(e("./level_editor/elem_props_edit"), i),
		o(e("./core/iap"), i),
		o(e("./game-flow/iap_no_ads"), i),
		o(e("./game-flow/iap_unlimited_lives"), i),
		o(e("./game-flow/congrat_purcharse_no_ads"), i),
		o(e("./game-flow/congrat_purcharse_infinity_lives"), i),
		o(e("./game-flow/progress_bar"), i),
		o(e("./game-flow/daily_rewards"), i),
		o(e("./social/promo"), i),
		o(e("./promo_full_panel/promo_full_panel"), i),
		cc._RF.pop()
	},
	{
		"./configs": "configs",
		"./core/character_move": "character_move",
		"./core/character_navigation": "character_navigation",
		"./core/control": "control",
		"./core/element-factory/element_factory": "element_factory",
		"./core/element-factory/element_init": "element_init",
		"./core/element-factory/element_utils": "element_utils",
		"./core/game": "game",
		"./core/iap": "iap",
		"./core/level_manager": "level_manager",
		"./core/map": "map",
		"./core/map_visual": "map_visual",
		"./core/more_lives": "more_lives",
		"./core/spine_control": "spine_control",
		"./game-flow/congrat_purcharse_infinity_lives": "congrat_purcharse_infinity_lives",
		"./game-flow/congrat_purcharse_no_ads": "congrat_purcharse_no_ads",
		"./game-flow/daily_rewards": "daily_rewards",
		"./game-flow/data": "data",
		"./game-flow/game_flow": "game_flow",
		"./game-flow/iap_no_ads": "iap_no_ads",
		"./game-flow/iap_unlimited_lives": "iap_unlimited_lives",
		"./game-flow/load_optimize": "load_optimize",
		"./game-flow/login": "login",
		"./game-flow/progress_bar": "progress_bar",
		"./game-flow/user": "user",
		"./language/game_language": "game_language",
		"./level_config": "level_config",
		"./level_editor/elem_modify": "elem_modify",
		"./level_editor/elem_palette_edit": "elem_palette_edit",
		"./level_editor/elem_props_edit": "elem_props_edit",
		"./level_editor/level_edit_code": "level_edit_code",
		"./physics_config": "physics_config",
		"./promo_full_panel/promo_full_panel": "promo_full_panel",
		"./social/promo": "promo",
		"./social/social": "social",
		"./tut/tut": "tut",
		"./ui-fx/fx": "fx",
		"./ui-fx/ui": "ui",
		"./utils/audio": "audio",
		"./utils/instant_utils": "instant_utils",
		"./utils/spine_utils": "spine_utils",
		"./utils/utils": "utils",
		"./utils/utils_facebook": "utils_facebook",
		"./video-ads/inter_ad": "inter_ad",
		"./video-ads/video": "video"
	}],
	angle_slider_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "4e4d9uIFbVOXZ/EsBbK3xDk", "angle_slider_comp");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var a = e("../all_modules"),
		l = a._,
		r = cc._decorator,
		s = r.ccclass,
		p = (r.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			return o(t, e),
			t.prototype.onLoad = function() {
				var e = this;
				a.utils.addButtonComp(cc.find("Canvas/layer_edit_level/props_section/angle_slider/but_rotate"),
				function() {
					var t = l.round(360 * e.getComponent(cc.Slider).progress);
					t = 45 * (l.floor(t / 45) + 1) % 360,
					e.getComponent(cc.Slider).progress = t / 360,
					e.onSlide()
				})
			},
			t.prototype.onSlide = function() {
				var e = l.round(360 * this.getComponent(cc.Slider).progress);
				a.utils.setLabelText(cc.find("label_angle_value", this.node), e),
				a.elementPropsEdit.onAngleSlide(e)
			},
			c([s], t)
		} (cc.Component));
		i.
	default = p,
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	audio: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "29639UtmkRKuLS5Eu9Fzh+X", "audio"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.audio = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.audio = {
			audioList: {},
			playingIdList: {},
			isSoundOff: !0,
			init: function() {
				var e = this;
				n.login.addLoginDataField("isSoundOff"),
				n.login.addCallback(function(t) {
					e.isSoundOff = t.isSoundOff,
					setTimeout(function() {
						e.loadAudios()
					},
					1e3)
				})
			},
			renderBtnSound: function() {
				cc.find("Canvas/layer_pause/btn_sound_off").active = this.isSoundOff
			},
			loadAudios: function() {
				var e = this;
				cc.resources.loadDir("audios", cc.AudioClip,
				function(t, i) {
					if (t) return o.log(t);
					for (var n = 0,
					c = i; n &lt; c.length; n++) {
						var a = c[n];
						e.audioList[a.name] = a
					}
				})
			},
			playSound: function(e, t, i) {
				if (void 0 === t &amp;&amp; (t = 1), void 0 === i &amp;&amp; (i = !1), !this.isSoundOff &amp;&amp; this.audioList[e]) try {
					this.stopSound(e),
					this.playingIdList[e] = cc.audioEngine.play(this.audioList[e], i, t)
				} catch(n) {}
			},
			stopSound: function(e) { (this.playingIdList[e] || 0 === this.playingIdList[e]) &amp;&amp; cc.audioEngine.stopEffect(this.playingIdList[e])
			},
			playMusic: function() {
				if (!this.isSoundOff &amp;&amp; !cc.audioEngine.isMusicPlaying()) try {
					this.playingIdList.theme_music = cc.audioEngine.playMusic(this.audioList.theme_music, !0, 1)
				} catch(e) {
					o.log("playMusic err ", e)
				}
			},
			stopMusic: function() {
				cc.audioEngine.isMusicPlaying() &amp;&amp; cc.audioEngine.stopMusic()
			},
			playSoundClickButton: function() {
				this.isSoundOff || this.playSound("tap_sound", .2)
			},
			soundConnectedPointIndex: 0,
			resetContinuousSoundForPoint: function() {
				this.soundConnectedPointIndex = 1,
				this.playSound("1")
			},
			playSoundConnectPoint: function() {
				this.soundConnectedPointIndex++,
				this.playSound("" + this.soundConnectedPointIndex)
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	big_promo: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "9ebafM5R7lOxLB9zSW2q5PA", "big_promo"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.bigPromo = void 0;
		var n = e("../all_modules"),
		o = (n._, "bigPromoShownTime_784969582314706");
		i.bigPromo = {
			bigPromoShownTime: 0,
			startInit: function() {
				var e = this;
				n.promo.isPromoAvailable &amp;&amp; (n.login.addLoginDataField(o), n.login.addCallback(function(t) {
					var i;
					e[o] = t[o] || 0,
					e[o] &gt;= 3 || (n.data.saveData(((i = {})[o] = e[o] + 1, i)), e.initButtons(), n.ui.showLayer("layer_big_promo"), cc.find("Canvas/layer_big_promo").scale = 1)
				}))
			},
			initButtons: function() {
				var e = this;
				n.utils.addButtonComp(cc.find("Canvas/layer_big_promo/exitButton"),
				function() {
					n.ui.hideLayer("layer_big_promo"),
					n.utilsFB.log("ev_big_promo_action", 1, {
						action: "hide"
					})
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_big_promo/playnowButton"),
				function() {
					e.onClickPlayBut(),
					n.utilsFB.log("ev_big_promo_action", 1, {
						action: "play"
					})
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_big_promo/promoBigImage"),
				function() {
					e.onClickPlayBut(),
					n.utilsFB.log("ev_big_promo_action", 1, {
						action: "play"
					})
				})
			},
			onClickPlayBut: function() {
				n.ui.hideLayer("layer_big_promo"),
				n.ui.showLoading(),
				n.promo.switchPromoGame("784969582314706",
				function() {
					console.log("switchPromoGame &gt;&gt; fail callback calling..."),
					n.ui.hideLoading(),
					n.utilsFB.log("ev_big_promo_action", 1, {
						action: "cancel_switch"
					})
				})
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	bomb_collision_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "516187wi2NJfLq7StTPbTPm", "bomb_collision_comp");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var a = e("../../all_modules"),
		l = a._,
		r = cc._decorator,
		s = r.ccclass,
		p = (r.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			return o(t, e),
			t.prototype.onBeginContact = function(e, t, i) {
				var n = this.node,
				o = i.node;
				if (! ("wall" == o.group &amp;&amp; (o.width &lt; o.height || n.y &lt; o.y) || "latch" == o.group)) {
					var c = o.getComponent(cc.RigidBody).linearVelocity,
					a = n.getComponent(cc.RigidBody).linearVelocity;
					c.mag() &gt; 500 ? this.setExplode() : a.mag() &gt; 500 &amp;&amp; this.setExplode()
				}
			},
			t.prototype.setExplode = function() {
				var e = this.node,
				t = a.utils.getGlobalPosition(e),
				i = new cc.Rect(t.x - 125, t.y - 125, 250, 250),
				n = cc.director.getPhysicsManager().testAABB(i).map(function(e) {
					return e.node
				});
				l.log(" affectedObjectArr = " + n.map(function(e) {
					return e.name
				}) + " "),
				n.map(function(i) {
					if (i != e) {
						var n = a.utils.getGlobalPosition(i).sub(t),
						o = n.mag(),
						c = n.mul(1600 / (o * o));
						i.getComponent(cc.RigidBody).applyLinearImpulse(c, cc.Vec2.ZERO, !0),
						i.setDie &amp;&amp; !i.isDead &amp;&amp; c.mag() &gt; 180 &amp;&amp; i.setDie(i, "bom")
					}
				}),
				a.fx.showFxBomb(e),
				a.audio.playSound("explode"),
				e.active = !1
			},
			c([s], t)
		} (cc.Component));
		i.
	default = p,
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	canvas_init: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "47436VL6J1M4LclZvwQqGXT", "canvas_init"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var n = e("./all_modules");
		n._,
		cc.Class({
			extends: cc.Component,
			properties: {
				defaultFont: {
				default:
					null,
					type: cc.Font
				},
				stoneSprite: {
					type: cc.SpriteFrame,
				default:
					null
				}
			},
			onLoad: function() {
				for (var e in window._G = n,
				n) n[e].init &amp;&amp; n[e].init();
				n.utilsFB.log("ev_game_load_time", performance.now()),
				n.utils.setTimeout(function() {
					n.social.askBotSubscribe(function() {
						n.social.askShortcut(function() {
							n.PromoFullPanel.checkValueWhenLoginFacebook(),
							n.login.addCallback(function(e) {
								e.isNewUser
							})
						})
					})
				},
				1e3);
				var t = document.getElementById("htmlLoadingBackground");
				if (t &amp;&amp; (t.style.display = "none"), window.FBInstant) {
					var i = FBInstant.getEntryPointData();
					i &amp;&amp; i.isFromSharedPos &amp;&amp; FBInstant.logEvent("ev_user_click_shared_post", 1, {
						shareCode: i.shareCode || "null"
					})
				}
			}
		}),
		cc._RF.pop()
	},
	{
		"./all_modules": "all_modules"
	}],
	challenge: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "42406FdjKhMs5jhVAZmWyHj", "challenge"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.challenge = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.challenge = {
			friendArr: [],
			selectedFriend: {
				id: 0,
				score: 0,
				name: 0,
				photo: 0
			},
			challengedFriendArr: [],
			lastTimeResetChallengedFriendArr: [],
			challengeCancelTimeArr: [],
			init: function() {
				var e = this;
				setTimeout(function() {
					return e.renderUserNameAndAva()
				},
				1e3),
				n.login.addLoginDataField("challengedFriendArr"),
				n.login.addLoginDataField("lastTimeResetChallengedFriendArr"),
				n.login.addLoginDataField("challengeCancelTimeArr"),
				n.login.addCallback(function(t) {
					e.challengeCancelTimeArr = t.challengeCancelTimeArr || [],
					o.log("init &gt;&gt; this.challengeCancelTimeArr = ", e.challengeCancelTimeArr),
					window.FBInstant ? FBInstant.player.getConnectedPlayersAsync().then(function(e) {
						n.challenge.friendArr = e.map(function(e) {
							return {
								id: e.getID(),
								photo: e.getPhoto(),
								name: e.getName(),
								score: 0,
								rank: 0
							}
						}),
						o.log(" getConnectedPlayersAsync 222 &gt;&gt; _G.challenge.friendArr = ", n.challenge.friendArr)
					}).
					catch(function(e) {
						o.log(" getConnectedPlayersAsync eeee", e)
					}) : o.log(" getConnectedPlayersAsync eeee", e),
					e.challengedFriendArr = t.challengedFriendArr || [],
					e.lastTimeResetChallengedFriendArr = t.lastTimeResetChallengedFriendArr,
					e.lastTimeResetChallengedFriendArr || (e.lastTimeResetChallengedFriendArr = o.time(), n.data.saveData({
						lastTimeResetChallengedFriendArr: o.time()
					})),
					o.time() - e.lastTimeResetChallengedFriendArr &gt; n.configs.timeToResetChallengedFriendArr &amp;&amp; (e.lastTimeResetChallengedFriendArr = o.time(), n.data.saveData({
						lastTimeResetChallengedFriendArr: o.time()
					}), e.challengedFriendArr = [], n.data.saveData({
						challengedFriendArr: []
					}))
				})
			},
			entriesToArr: function(e) {
				for (var t = [], i = 0; i &lt; e.length; i++) {
					var o = e[i],
					c = {
						id: o.getID(),
						photo: o.getPhoto(),
						name: o.getName(),
						score: 0,
						rank: 0
					};
					t.push(c),
					c.id == n.user.id &amp;&amp; (n.user.bestScore = c.score || n.user.bestScore, n.ui.updateScore())
				}
				return t
			},
			check2GetFriendAndRender: function() {
				var e = this,
				t = this.challengeCancelTimeArr.length &gt;= n.configs.maxChallengeAskTimeIn1Day,
				i = this.challengeCancelTimeArr.some(function(e) {
					return o.time() - e &gt; 864e5
				});
				if (!t || i) {
					var c = this.friendArr.filter(function(t) {
						return t.id != n.user.id &amp;&amp; !e.challengedFriendArr.find(function(e) {
							return e.id == t.id
						})
					}),
					a = n.utils.randomArrItem(c);
					if (o.log(" newFriendInfo = ", a, "availableFriendArr=", c), o.log("this.friendArr=", this.friendArr), o.log("this.challengedFriendArr=", this.challengedFriendArr), a) return this.selectedFriend = a,
					this.selectedFriend.score = this.selectedFriend.score || 0,
					this.render(),
					!0
				}
			},
			renderUserNameAndAva: function() {
				n.utils.setLabelText(cc.find("Canvas/layer_challenge_friend/content_bg/players/Image_ButtonBase_player1/label_user_name"), n.user.name),
				n.utils.waitToRun(function() {
					cc.find("Canvas/layer_challenge_friend/content_bg/players/Image_ButtonBase_player1/avatar/real_avatar").getComponent(cc.Sprite).spriteFrame = n.user.avatarSpriteFrame
				},
				"avatarSpriteFrame", n.user)
			},
			render: function() {
				n.language.setLabelDataAndRender(cc.find("Canvas/layer_challenge_friend/content_bg/label_score"), n.utils.localizeNumber(n.user.score)),
				cc.assetManager.loadRemote(this.selectedFriend.photo,
				function(e, t) {
					e || (cc.find("Canvas/layer_challenge_friend/content_bg/players/Image_ButtonBase_player2/avatar/real_avatar").getComponent(cc.Sprite).spriteFrame = new cc.SpriteFrame(t))
				}),
				n.utils.setLabelText(cc.find("Canvas/layer_challenge_friend/content_bg/players/Image_ButtonBase_player2/label_user_name"), this.selectedFriend.name),
				n.utils.setLabelText(cc.find("Canvas/layer_challenge_friend/content_bg/players/Image_ButtonBase_player1/label_score"), n.utils.localizeNumber(n.user.score)),
				n.utils.setLabelText(cc.find("Canvas/layer_challenge_friend/content_bg/players/Image_ButtonBase_player2/label_score"), n.utils.localizeNumber(this.selectedFriend.score))
			},
			onbtnPlayChallenge: function() {
				var e = this;
				n.social.createContext(this.selectedFriend.id,
				function() {
					n.social.playerIdSendMessage = e.selectedFriend.id,
					n.ui.hideLayer("layer_challenge_friend"),
					n.gameOver.replay(),
					e.challengedFriendArr.push(e.selectedFriend),
					n.data.saveData({
						challengedFriendArr: e.challengedFriendArr
					}),
					o.log(" onbtnPlayChallenge &gt;&gt; _G.challenge.resetChallengCancelTimeArr(); "),
					n.challenge.resetChallengCancelTimeArr()
				})
			},
			onBtnPlayWithAnother: function() {
				n.social.invite("invite_challenge",
				function(e) {
					n.social.playerIdSendMessage = e,
					n.ui.hideLayer("layer_challenge_friend"),
					n.gameOver.replay(),
					o.log(" onBtnPlayWithAnother &gt;&gt; _G.challenge.resetChallengCancelTimeArr(); "),
					n.challenge.resetChallengCancelTimeArr()
				},
				!0)
			},
			resetChallengCancelTimeArr: function() {
				this.challengeCancelTimeArr = [],
				n.data.saveData({
					challengeCancelTimeArr: this.challengeCancelTimeArr
				})
			},
			onBtnCancelClicked: function() {
				this.challengeCancelTimeArr.push(o.time()),
				this.challengeCancelTimeArr.length &gt; n.configs.maxChallengeAskTimeIn1Day &amp;&amp; this.challengeCancelTimeArr.shift(),
				n.data.saveData({
					challengeCancelTimeArr: this.challengeCancelTimeArr
				}),
				o.log(" onBtnCancelClicked &gt;&gt; this.challengeCancelTimeArr = ", this.challengeCancelTimeArr),
				n.utilsFB.log("ev_click_button_cancel_challenge"),
				n.ui.hideLayer("layer_challenge_friend"),
				n.gameOver.replay()
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	character_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "f838eS6KYZAQ7lvjX28NBH/", "character_comp");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var a = e("../all_modules"),
		l = a._,
		r = cc._decorator,
		s = r.ccclass,
		p = (r.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			return o(t, e),
			t.prototype.onBeginContact = function(e, t, i) {
				var n = a.elementUtils.colliderNode2RootElement,
				o = this.node,
				c = i.node,
				l = n(o),
				r = n(c),
				s = o.getComponent(cc.PhysicsCollider).getAABB(),
				p = c.getComponent(cc.PhysicsCollider).getAABB();
				this.handleObjectMoveThroughOther(o, c, r, e, s, p),
				this.handleCharMovement(o, c, r),
				this.handleMainVsTargets(o, c, r),
				this.handleDamage(o, c, r, s, p),
				this.handleCharsAttack(o, l, c, r)
			},
			t.prototype.handleCharMovement = function(e, t) {
				e.targetArr &amp;&amp; e.targetArr.includes(t) &amp;&amp; a.charMove.stopCharacter(e),
				"char_move_target" != t.group || t.linkedChar != this.node || t.isRepositioning || a.charMove.onCollideMoveGuide(e)
			},
			t.prototype.update = function() {
				this.node.moveVec &amp;&amp; this.node.getComponent(cc.RigidBody).applyLinearImpulse(this.node.moveVec.mul(this.node.moveSpeed || 110), cc.Vec2.ZERO, !0)
			},
			t.prototype.handleObjectMoveThroughOther = function(e, t, i, n, o, c) {
				if (t.parent &amp;&amp; !["wall", "latch"].includes(t.group)) return ["water", "character", "gold"].includes(i.group) ? n.disabled = !0 : c.yMax &gt; o.yMax ? n.disabled = !0 : void 0
			},
			t.prototype.handleMainVsTargets = function(e, t, i) {
				if (t.parent &amp;&amp; e.isMainChar &amp;&amp; !e.isDead &amp;&amp; (t.isWinTarget || i.isWinTarget)) if ("elem_sword" == t.name) t.removeFromParent(),
				e.animSuffix = "",
				a.spineUtils.runSpineNodeAnim(e, "TakeWeapon", !1,
				function() {
					e.isDead || (e.hasWeapon = !0, a.spineUtils.runSpineNodeAnim(e, "Idle", !0), e.movingGlobalPointArr = null, e.isMovingToTarget = !1)
				});
				else {
					if (e.isPlayingAnimWin) return;
					l.log(" handleMainVsTargets &gt;&gt;  "),
					e.isPlayingAnimWin = !0;
					var n = a.spineUtils.runSpineNodeAnimArr(e, ["Open", "OpenLoop", "OpenEnd", "Win"]);
					if (n) if ("elem_char_princess" == i.name) {
						var o = n[0] + n[1] + n[2];
						l.log(" animDurationArr = " + n + " // waitTime=" + o + " "),
						a.utils.setTimeout(function() {
							i.isDead || (a.spineUtils.runSpineNodeAnim(i, "Win", !1), a.spineUtils.runSpineNodeAnim(i, "WinLoop", !0), a.utils.setTimeout(function() {
								a.gameFlow.onWin()
							},
							100))
						},
						1e3 * o)
					} else "elem_chest" == i.name ? (o = n[0] + n[1], l.log(" animDurationArr = " + n + " // waitTime=" + o + " "), a.utils.setTimeout(function() {
						a.spineUtils.runSpineNodeAnim(i, "ChestOpen", !1,
						function() {
							a.spineUtils.runSpineNodeAnim(i, "ChestOpenIdle", !0)
						}),
						a.gameFlow.onWin()
					},
					1e3 * o)) : (o = n[0] + n[1] + n[2], a.utils.setTimeout(function() {
						a.gameFlow.onWin()
					},
					1e3 * o))
				}
			},
			t.prototype.handleDamage = function(e, t, i, n, o) {
				if (!e.isDead &amp;&amp; t.parent) {
					"elem_poinson_gas" == i.name &amp;&amp; this.handleCharsDie(e, i.name),
					"elem_cold_gas" == i.name &amp;&amp; (this.handleCharsDie(e, i.name), i.children.map(function(e) {
						return e.active = !1
					}));
					var c = t.getComponent(cc.RigidBody).linearVelocity;
					if ("solid_body" == t.group &amp;&amp; (!e.isMainChar || "elem_chest" != t.name)) return l.log(" otherVelo = " + c + " "),
					void(c.mag() &gt; 20 &amp;&amp; this.handleCharsDie(e, i.name));
					if ("elem_lava" == i.name &amp;&amp; !t.isStone) return this.handleCharsDie(e, i.name),
					void setTimeout(function() {
						return t.removeFromParent()
					});
					if ("elem_lava" != i.name &amp;&amp; "elem_stone" != i.name);
					else if (c.mag() &gt; 20 &amp;&amp; o.yMax &gt; n.yMax &amp;&amp; (e.isSmallStoneHit = e.isSmallStoneHit || 0, e.isSmallStoneHit++, e.isSmallStoneHit &gt; 5)) {
						var a = e.getComponent(cc.PhysicsBoxCollider);
						a.size.height /= 2,
						a.offset.y -= a.size.height / 2,
						a.apply(),
						this.handleCharsDie(e, i.name)
					}
				}
			},
			t.prototype.handleCharsAttack = function(e, t, i, n) {
				var o = this;
				i.parent &amp;&amp; (!n.isEnemy || n.isDead || e.isDead || i.isDying || e.isDying || (e.hasWeapon ? (l.log(" handleCharsAttack() Called ! stopCharacter(" + i.name + ") "), a.charMove.stopCharacter(i), a.spineUtils.runSpineNodeAnim(i, "Idle", !0), a.utils.waitToRun(function() {
					e.isFreeToAttack = !1,
					a.audio.playSound("main_fight"),
					a.utils.setTimeout(function() {
						return a.audio.playSound("kill_boss_2")
					},
					200),
					a.spineControl.charAttack(e, i,
					function() {
						e.isDead || (a.spineUtils.runSpineNodeAnim(e, "Idle", !0), t.movingGlobalPointArr = null, t.isMovingToTarget = !1, e.isFreeToAttack = !0)
					}),
					i.isDying = !0,
					a.utils.setTimeout(function() {
						return o.handleCharsDie(i)
					},
					700)
				},
				"isFreeToAttack", e)) : (!t.isEnemy || e.isSnake &amp;&amp; !i.isSnake) &amp;&amp; (a.charMove.stopCharacter(e), a.spineUtils.runSpineNodeAnim(e, "Idle", !0), a.utils.waitToRun(function() {
					i.isFreeToAttack = !1,
					(e.isSnake || i.isSnake) &amp;&amp; a.utils.setTimeout(function() {
						return a.audio.playSound("snake_bite")
					},
					500),
					a.spineControl.charAttack(i, e,
					function() {
						e.isMainChar &amp;&amp; a.utils.setTimeout(function() {
							i.isDead || a.spineUtils.runSpineNodeAnim(i, "Win")
						},
						500),
						l.log(" otherRootNode = " + n.name + " // thisRootNode=" + t.name + " "),
						a.spineUtils.runSpineNodeAnim(n, "Idle", !0),
						i.movingGlobalPointArr = null,
						n.isMovingToTarget = !1,
						i.isFreeToAttack = !0
					}),
					e.isDying = !0,
					a.utils.setTimeout(function() {
						return o.handleCharsDie(e)
					},
					700)
				},
				"isFreeToAttack", i))))
			},
			t.prototype.handleCharsDie = function(e, t) {
				e.setDie(e, t),
				"elem_char_main" != e.name &amp;&amp; "elem_char_princess" != e.name || (a.ui.showNagScreen(), setTimeout(function() {
					return a.ui.hideNagScreen()
				},
				3e3))
			},
			c([s], t)
		} (cc.Component));
		i.
	default = p,
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	character_move: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "e3ecaTpxVRLer6tstlwr0Re", "character_move"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.charMove = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.charMove = {
			drawMarkerConnect2Points: function(e, t) {
				var i = cc.find("marker"),
				c = n.utils.copyNodeTo(i, i.parent);
				c.setPosition(e);
				var a = t.sub(e);
				c.width = a.mag(),
				c.angle = 180 * o.atan2(a.y, a.x) / o.PI,
				o.log(" newMarker.angle = " + c.angle + " // diffVec = " + a + " // newMarker.width=" + c.width + " "),
				n.utils.setTimeout(function() {
					c.removeFromParent()
				},
				1e4)
			},
			drawMarketAtPoint: function(e) {
				var t = cc.find("marker"),
				i = n.utils.copyNodeTo(t, t.parent);
				i.setPosition(e),
				n.utils.setTimeout(function() {
					i.removeFromParent()
				},
				1e4)
			},
			planMoveToTargets: function(e, t) {
				if (! (e.isMovingToTarget || e.isDead || e.isPlayingAnimWin)) {
					e.targetArr = t;
					var i = n.charNavigate.naviCharToGlobalTargets(e, t);
					if (i) return e.isMovingToTarget = !0,
					i.shift(),
					this.moveAlongGlobalPointArr(e, i, !0),
					i
				}
			},
			planMoveToSameLevelTarget: function(e, t) {
				if (! (e.isMovingToTarget || e.isDead || e.isPlayingAnimWin)) {
					e.targetArr = t;
					var i = n.charNavigate.naviCharToSameLevelTargets(e, t);
					if (i) return e.isMovingToTarget = !0,
					i.shift(),
					this.moveAlongGlobalPointArr(e, i),
					i
				}
			},
			moveAlongGlobalPointArr: function(e, t, i) {
				void 0 === i &amp;&amp; (i = !1),
				e.movingGlobalPointArr = t,
				this.startMovingTo(e, t.shift()),
				i &amp;&amp; (e.jumpInterval = n.utils.setInterval(function() {
					if (e.position.sub(e.lastPos || cc.Vec2.ZERO).mag() &lt; 20) {
						if (!e.moveVec) return;
						var t = e.moveVec.clone();
						t.x *= 300,
						t.y = 2800,
						e.getComponent(cc.RigidBody).applyLinearImpulse(t, cc.Vec2.ZERO, !0)
					}
					e.lastPos = e.position.clone()
				},
				400))
			},
			startMovingTo: function(e, t) {
				var i = n.utils.global2LocalPosDiff(e, t.x, t.y),
				c = o.abs(i.x) &gt; o.abs(i.y) || i.y &gt; 0 ? cc.v2(o.sign(i.x), 0) : null,
				a = t;
				c ? a.addSelf(c.mul(10)) : a.addSelf(cc.v2(0, 5 - e.height)),
				this.setMovetargetGlobalPos(e.moveTarget, a),
				c &amp;&amp; (e.moveVec = c, n.spineControl[c.x &gt; 0 ? "charRunRight": "charRunLeft"](e), "elem_char_snake" != e.name &amp;&amp; n.audio.playSound("walking"))
			},
			stopCharacter: function(e, t) {
				void 0 === t &amp;&amp; (t = !1),
				o.log(" stopCharacter &gt;&gt;  charNode=" + e.name),
				e.moveVec = null,
				e.getComponent(cc.RigidBody).linearVelocity = cc.Vec2.ZERO,
				!t &amp;&amp; e.jumpInterval &amp;&amp; (o.log(" stopCharacter &gt;&gt; clearing JUMP interval &gt;&gt; .... "), n.utils.clearInterval(e.jumpInterval), e.jumpInterval = 0),
				"elem_char_snake" != e.name &amp;&amp; n.audio.stopSound("walking")
			},
			onCollideMoveGuide: function(e) {
				if (e.movingGlobalPointArr &amp;&amp; !e.isDead &amp;&amp; !e.isPlayingAnimWin) {
					var t = e.movingGlobalPointArr.shift();
					if (this.stopCharacter(e, !0), !t) return n.spineUtils.runSpineNodeAnim(e, "Idle", !0);
					e.isDead || e.isPlayingAnimWin || this.startMovingTo(e, t)
				}
			},
			setMovetargetGlobalPos: function(e, t) {
				e.getComponent(cc.RigidBody).awake = !1;
				var i = n.utils.global2LocalPosDiff(e, t.x, t.y);
				e.stopAllActions(),
				e.isRepositioning = !0,
				cc.tween(e).by(.01, {
					position: i
				}).call(function() {
					return e.isRepositioning = !1
				}).start()
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	character_navigation: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "e8358wMfNZPK6/NvlXbFs0I", "character_navigation");
		var n = this &amp;&amp; this.__spreadArrays ||
		function() {
			for (var e = 0,
			t = 0,
			i = arguments.length; t &lt; i; t++) e += arguments[t].length;
			var n = Array(e),
			o = 0;
			for (t = 0; t &lt; i; t++) for (var c = arguments[t], a = 0, l = c.length; a &lt; l; a++, o++) n[o] = c[a];
			return n
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.charNavigate = void 0;
		var o = e("../all_modules"),
		c = o._;
		i.charNavigate = {
			navigateObjectGroups: {
				wall: !0,
				latch: !0,
				solid_body: !0
			},
			navigateObjectName: {
				elem_fake_base: !0,
				elem_dungeon: !0,
				elem_big_rock: !0,
				elem_circle_rock: !0
			},
			physicsManager: null,
			init: function() {
				this.physicsManager = cc.director.getPhysicsManager()
			},
			naviCharToSameLevelTargets: function(e, t) {
				if (!o.elementPaletteEdit.isEditMode || o.elementPaletteEdit.isPreviewing) return this.naviCharToGlobalTargets(e, t, 40)
			},
			naviCharToGlobalTargets: function(e, t, i) {
				var n = this;
				if (void 0 === i &amp;&amp; (i = 0), !o.elementPaletteEdit.isEditMode || o.elementPaletteEdit.isPreviewing) {
					var a, l = (this.getCharBase(e) || {}).node;
					if (l) {
						var r = [l],
						s = e.width * c.abs(e.scaleX),
						p = e.height * e.scaleY * e.anchorY,
						g = e.height - p,
						h = o.utils.getGlobalPosition(e),
						d = h.y - p;
						h.y += g;
						for (var v = [{
							baseNode: l,
							pointChainArr: [h]
						}], u = 20, y = function() {
							var o = [];
							if (v.some(function(c) {
								var l = c.baseNode,
								p = c.pointChainArr;
								if (a = n.extendBasePoint(e, t, s, l, p, d, i, r, o)) return ! 0
							}), a) return {
								value: m.polishPointArr(a)
							};
							v = o
						},
						m = this; u--&amp;&amp;v.length;) {
							var f = y();
							if ("object" == typeof f) return f.value
						}
					}
				}
			},
			extendBasePoint: function(e, t, i, a, l, r, s, p, g) {
				var h, d = this,
				v = l[l.length - 1],
				u = o.elementUtils.colliderNode2RootElement(a),
				y = a.getComponent(cc.PhysicsCollider).getAABB(),
				m = u.baseAngle || u.angle;
				m = (m + 3600) % 180,
				-1 == u.scaleY &amp;&amp; (m = 180 - m);
				var f = !(c.abs(m) &lt; 5 || c.abs(180 - m) &lt; 5),
				_ = cc.v2(y.xMin - c.abs(i), v.y),
				w = cc.v2(y.xMax + c.abs(i), v.y);
				return (f ? [m &gt; 90 ? w: _] : [_, w]).some(function(i) {
					var a = n(l),
					u = d.getObstaclesInRange(v, i, t, e, !0).map(function(e) {
						return e.node
					});
					if (u[0] &amp;&amp; t.includes(u[0])) {
						var y = o.utils.getGlobalPosition(u[0]),
						m = u[0].height * u[0].anchorY;
						y.y - m - (i.y - e.height) &lt; 50 &amp;&amp; (a.push(y), h = a)
					} else if (!u.length) {
						a.push(i);
						var f = d.getObstaclesInRange(i, i.add(cc.v2(0, -1e3)), t, e),
						_ = n(a, [f[0].pos.add(cc.v2(0, e.height))]);
						if (f[0] &amp;&amp; t.includes(f[0].node) &amp;&amp; !s) _[_.length - 1].y -= e.height,
						h = _;
						else {
							var w = f[0].pos.y,
							C = c.abs(w - r);
							if (!s || C &lt; s) {
								var b = f[0].node;
								p.includes(b) || (p.push(b), g.push({
									baseNode: b,
									pointChainArr: _
								}))
							}
						}
					}
					if (h) return ! 0
				}),
				h
			},
			getCharBase: function(e) {
				var t = this,
				i = o.utils.getGlobalPosition(e);
				i.y -= e.height * e.scaleY * e.anchorY;
				var c = cc.v2(e.width / 2, 0),
				a = i.clone().add(cc.v2(0, -100)),
				l = this.getObstaclesInRange(i.sub(c), a.sub(c)),
				r = this.getObstaclesInRange(i.add(c), a.add(c));
				return n(l, r).sort(function(e, n) {
					return t.obstacleInfoSortFunc(e, n, i)
				})[0]
			},
			getObstaclesInRange: function(e, t, i, n, a) {
				var l = this;
				void 0 === a &amp;&amp; (a = !1);
				var r = this.physicsManager.rayCast(e, t, cc.RayCastType.All).map(function(e) {
					return {
						node: e.collider.node,
						pos: e.point
					}
				});
				if (n &amp;&amp; i) {
					var s = n.height * n.scaleY * (1 - n.anchorY),
					p = c.min(e.x, t.x),
					g = c.abs(e.x - t.x),
					h = new cc.Rect(p, e.y - s, g, n.height * n.scaleY),
					d = this.physicsManager.testAABB(h);
					r.push.apply(r, d.map(function(e) {
						return {
							node: e.node,
							pos: o.utils.getGlobalPosition(e.node)
						}
					}))
				}
				return r.filter(function(t) {
					var c = t.node;
					if (!a &amp;&amp; n) {
						var r = c.getComponent(cc.PhysicsCollider).getAABB();
						if (e.y - n.height * n.scaleY - r.yMax &lt; -50) return ! 1
					}
					var s = o.elementUtils.colliderNode2RootElement(c);
					if ("elem_dungeon" != s.name || s.isTrapped) return l.navigateObjectGroups[c.group] || l.navigateObjectName[s.name] || i &amp;&amp; i.includes(c)
				}).sort(function(t, i) {
					return l.obstacleInfoSortFunc(t, i, e, a)
				})
			},
			obstacleInfoSortFunc: function(e, t, i, n) {
				void 0 === n &amp;&amp; (n = !1);
				var a = o.utils.getGlobalPosition(e.node),
				l = o.utils.getGlobalPosition(t.node),
				r = n ? "x": "y";
				return c.abs(a[r] - i[r]) &gt; c.abs(l[r] - i[r]) ? 1 : -1
			},
			polishPointArr: function(e) {
				var t = [];
				return e.map(function(i, n) {
					var o = [e[n + 1], e[n + 2]],
					a = o[0],
					l = o[1];
					a &amp;&amp; l &amp;&amp; i.x != a.x &amp;&amp; a.x == l.x &amp;&amp; c.abs(a.y - l.y) &lt; 40 &amp;&amp; t.push(l)
				}),
				c.log(" polishPointArr &gt;&gt; pointsToRemove=" + t.join(" &gt; ")),
				t.map(function(t) {
					return c.removeArrItem(e, t)
				}),
				e
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	chest_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "9716bUW0vtM6Kwy2Z4UEzp7", "chest_comp");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var a = e("../../all_modules"),
		l = (a._, cc._decorator),
		r = l.ccclass,
		s = (l.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			return o(t, e),
			t.prototype.onBeginContact = function(e, t, i) {
				var n = a.elementUtils.colliderNode2RootElement,
				o = this.node,
				c = i.node,
				l = n(o);
				n(c),
				!l || l.isPlayingSound || o.getComponent(cc.RigidBody).linearVelocity.mag() &lt; 40 &amp;&amp; c.getComponent(cc.RigidBody).linearVelocity.mag() &lt; 40 || (l.isPlayingSound = !0, a.audio.playSound("square_rock_hit_ground", 1), setTimeout(function() {
					l.isPlayingSound = !1
				},
				2e3))
			},
			c([r], t)
		} (cc.Component));
		i.
	default = s,
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	circle_rock_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "3a5e7N0FqJGgIV6nPqLnVoC", "circle_rock_comp");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var a = e("../../all_modules"),
		l = (a._, cc._decorator),
		r = l.ccclass,
		s = (l.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			return o(t, e),
			t.prototype.onBeginContact = function(e, t, i) {
				var n = a.elementUtils.colliderNode2RootElement,
				o = this.node,
				c = i.node,
				l = n(o);
				n(c),
				!l || l.isPlayingSound || o.getComponent(cc.RigidBody).linearVelocity.mag() &lt; 40 &amp;&amp; c.getComponent(cc.RigidBody).linearVelocity.mag() &lt; 40 || (l.isPlayingSound = !0, a.audio.playSound("round_stone", 1), setTimeout(function() {
					l.isPlayingSound = !1
				},
				2e3))
			},
			c([r], t)
		} (cc.Component));
		i.
	default = s,
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	configs: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "1f7ceVR4rFNNKWmY/lOdaCu", "configs"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.configs = void 0,
		e("./all_modules")._,
		i.configs = {
			isIAPTemporarilyOff: !1,
			maxLifeCount: 3,
			newUserLifeCount: 3,
			moreLifeAfterVideo: 1,
			moreLifeAfterWait: 3,
			moreLifeWaitTime: 120,
			lifePriceInGold: 3e3,
			newUserGold: 0,
			progressGoldArr: [50, 100, 150, 250, 450],
			winVideoGoldMultipliedBy: 10,
			dailyRewards: [0, 300, 500, 1e3, 1200, 1500, 2e3, 3e3],
			timeToResetChallengedFriendArr: 864e5,
			maxChallengeAskTimeIn1Day: 3,
			isShowPromoGames: !1,
			listIdPromoGame: [{
				name: "Hexa7",
				id: "1383015141907474"
			},
			{
				name: "Block Puzzle",
				id: "1996976567204407"
			},
			{
				name: "Sort Ball 3D",
				id: "617940745660759"
			},
			{
				name: "Dicedom",
				id: "312849576761966"
			},
			{
				name: "Drop Number",
				id: "691633828107388"
			}],
			interAdId: "3402403306536384_3516316588478388",
			interAdRatio: {
				gameOverReplay: 1
			},
			showInterAdAfterEveryReplayTime: 3,
			videoRewardId: "3402403306536384_3516311325145581",
			videoContinueTime: 1
		},
		cc._RF.pop()
	},
	{
		"./all_modules": "all_modules"
	}],
	congrat_purcharse_infinity_lives: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "7efa1+gmM5PaZJR0IDQk9R2", "congrat_purcharse_infinity_lives"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.purchaseInfinityLives = void 0;
		var n = e("../all_modules");
		n._,
		i.purchaseInfinityLives = {
			isPaid: !1,
			init: function() {
				this.bindButtonHandlers()
			},
			bindButtonHandlers: function() {
				n.utils.addButtonComp(cc.find("Canvas/layer_congrat_purchase_infinity_lives/exitButton"),
				function() {
					n.ui.hideLayer("layer_congrat_purchase_infinity_lives")
				})
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	congrat_purcharse_no_ads: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "9b333GICWtPcrmiw9lJgLpz", "congrat_purcharse_no_ads"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.purchaseNodAds = void 0;
		var n = e("../all_modules");
		n._,
		i.purchaseNodAds = {
			isPaid: !1,
			init: function() {
				this.bindButtonHandlers()
			},
			bindButtonHandlers: function() {
				n.utils.addButtonComp(cc.find("Canvas/layer_congrat_purchase_no_ads/exitButton"),
				function() {
					n.ui.hideLayer("layer_congrat_purchase_no_ads")
				})
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	control: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "8e7c0FeBNJDLKwHIHkuWaP3", "control"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.control = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.control = {
			init: function() {},
			initControlSingleLatch: function(e) {
				if (!n.elementPaletteEdit.isEditMode || n.elementPaletteEdit.isPreviewing) {
					var t, i = cc.find("root_visual_node", e),
					c = cc.winSize.width,
					a = c / 3e3,
					l = e.getChildByName("touch_pad");
					n.utils.singleTouchSet(l,
					function(e) {
						t = e
					},
					function() {},
					function(r) {
						if (!e.isUsed) {
							var s = r.sub(t);
							if (s.mag() &gt; 30) {
								var p = 180 * o.atan2(s.y, s.x) / o.PI,
								g = o.floor(540 + p - e.angle) % 360;
								if (g &gt; 180 &amp;&amp; (g = 360 - g), g &gt; 15) return
							}
							n.tut.checkEndTut(),
							e.isUsed = !0,
							n.audio.playSound("latch", 1),
							cc.tween(i).by(a, {
								x: -c
							}).call(function() {
								e.getChildByName("physical_node").active = !1,
								l.active = !1,
								i.active = !1
							}).start()
						}
					})
				}
			},
			initControlDoubleLatch: function(e) {
				if (!n.elementPaletteEdit.isEditMode || n.elementPaletteEdit.isPreviewing) {
					e.isAtPointA = !0,
					e.isTouchable = !0;
					var t, i = cc.find("physic_container/physical_node", e),
					c = cc.find("visual_node/touch_pad", e);
					n.utils.singleTouchSet(c,
					function(e) {
						t = e
					},
					function() {},
					function(c) {
						if (e.isTouchable) {
							var a = c.sub(t);
							if (a.mag() &gt; 30) {
								var l = e.angle + 90 - (e.isAtPointA ? 0 : 180) - (e.orgParams.isFlip ? 180 : 0),
								r = 180 * o.atan2(a.y, a.x) / o.PI,
								s = o.floor(540 + r - l) % 360;
								if (s &gt; 180 &amp;&amp; (s = 360 - s), s &gt; 20) return
							}
							e.isTouchable = !1,
							n.audio.playSound("latch", 1);
							var p = cc.find("visual_node", e),
							g = n.utils.setInterval(function() {
								return p.position = i.position.mul(i.parent.scaleY)
							},
							16),
							h = "double_latch_move_" + (e.isAtPointA ? "AB": "BA");
							n.fx.playNodeAnim(i, h,
							function() {
								e.isTouchable = !0,
								e.isAtPointA = !e.isAtPointA,
								n.utils.clearInterval(g)
							})
						}
					})
				}
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	daily_rewards: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "d24b435ccRH55zPVAImxAlT", "daily_rewards"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.dailyRewartds = void 0;
		var n = e("../all_modules");
		n._,
		i.dailyRewartds = {
			dailyRewardDayNumber: 0,
			callbackDailyHasTut: null,
			init: function() {
				var e = this;
				n.login.addLoginDataField("dailyRewardDayNumber"),
				n.login.addLoginDataField("lastDateStr"),
				n.login.addCallback(function(t) {
					n.user.userDailyReward = {},
					t.isTutDone ? (n.user.userDailyReward = {
						lastDateStr: t.lastDateStr,
						dailyRewardDayNumber: t.dailyRewardDayNumber
					},
					e.showLayerDaily()) : e.callbackDailyHasTut = function() {
						return e.showLayerDaily()
					}
				})
			},
			showLayerDaily: function() {
				var e = new Date,
				t = e.getUTCMonth() + 1,
				i = e.getUTCDate(),
				o = e.getUTCFullYear() + "/" + t + "/" + i;
				if (o != n.user.userDailyReward.lastDateStr) {
					var c = n.user.userDailyReward.dailyRewardDayNumber || 0;
					c = 7 == c ? 1 : c + 1,
					this.renderLayout(c),
					n.ui.showLayer("layer_daily"),
					n.data.saveData({
						lastDateStr: o,
						dailyRewardDayNumber: c
					})
				}
			},
			renderLayout: function(e) {
				cc.find("Canvas/layer_daily/day_grid").children.map(function(t, i) {
					var o = i + 1;
					n.utils.setLabelText(cc.find("label_day_name", t), "Day " + o),
					n.utils.setLabelText(cc.find("label_gold_num", t), n.utils.localizeNumber(n.configs.dailyRewards[o])),
					cc.find("claimed_active", t).active = o &lt;= e,
					cc.find("prev_days_layer", t).active = o &lt; e
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_daily/btn_claim"),
				function() {
					n.ui.hideLayer("layer_daily"),
					n.game.addGold(n.configs.dailyRewards[e]),
					n.utilsFB.log("ev_claim_gold_daily")
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_daily/btn_close"),
				function() {
					n.ui.hideLayer("layer_daily"),
					n.utilsFB.log("ev_close_daily")
				})
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	data: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "6fcfai6altGx5zZIQhKRYH8", "data"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.data = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.data = {
			init: function() {
				n.data.isUserReady = !0
			},
			saveData: function(e, t) {
				window.FBInstant ? FBInstant.player.setDataAsync(e).then(function() {
					t &amp;&amp; t()
				}) : n.utils.setTimeout(function() {
					for (var i in e) try {
						localStorage.setItem(i, JSON.stringify(e[i]))
					} catch(n) {
						o.log(n)
					}
					t &amp;&amp; t()
				},
				500)
			},
			loadData: function(e, t) {
				window.FBInstant ? FBInstant.player.getDataAsync(e).then(function(e) {
					t &amp;&amp; t(e)
				}) : n.utils.setTimeout(function() {
					var i = {};
					e.map(function(e) {
						var t = localStorage.getItem(e);
						if (t) try {
							i[e] = JSON.parse(t)
						} catch(n) {}
					}),
					t &amp;&amp; t(i)
				},
				500)
			},
			loadEntryPointData: function() {
				if (window.FBInstant) {
					var e = FBInstant.getEntryPointData();
					e &amp;&amp; e.player_sent_id &amp;&amp; (n.user.playerIdShare = e.player_sent_id),
					e &amp;&amp; -1 != e.shareCode.indexOf("share") &amp;&amp; (n.user.entryPointData = e, "share_challenge" == e.shareCode ? (console.log("V\xe0o t\u1eeb share Challenge"), FBInstant.logEvent("ev_join_from_challenge", 1, {
						shareCode: e.shareCode || "null"
					})) : "share_game_play" == e.shareCode &amp;&amp; (console.log("V\xe0o t\u1eeb share game play"), FBInstant.logEvent("ev_join_from_share_gameplay", 1, {
						shareCode: e.shareCode || "null"
					}))),
					e &amp;&amp; -1 != e.shareCode.indexOf("invite") &amp;&amp; "invite_home" == e.shareCode &amp;&amp; (console.log("V\xe0o t\u1eeb Invite game play"), FBInstant.logEvent("ev_join_from_invite_gameplay", 1, {
						shareCode: e.shareCode || "null"
					}))
				}
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	dungeon_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "bcf0eMMBPZAlpeKU/z6b2C2", "dungeon_comp");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var a = e("../../all_modules"),
		l = (a._, cc._decorator),
		r = l.ccclass,
		s = (l.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			return o(t, e),
			t.prototype.onBeginContact = function(e, t, i) {
				var n = a.elementUtils.colliderNode2RootElement,
				o = this.node,
				c = i.node,
				l = n(o),
				r = n(c);
				if (!l.isTrapped &amp;&amp; "character" == r.group) {
					e.disabled = !0;
					var s = cc.find("mask/horz_bars", l);
					cc.tween(s).to(a.trapConfig.dungeonCollapseTime, {
						x: 10
					}).call(function() {
						l.isTrapped = !0,
						r.getComponent("character_comp").handleCharsDie(r)
					}).start()
				}
			},
			c([r], t)
		} (cc.Component));
		i.
	default = s,
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	elem_modify: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "8d4caoy0WVOF4HbAlK7g04k", "elem_modify"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.elementModify = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.elementModify = {
			selectedElemNode: null,
			modifyButtonSet: new cc.Node,
			elemTouchPad: new cc.Node,
			mainContainer: new cc.Node,
			previewContainer: new cc.Node,
			intervalCheckVar: null,
			init: function() {
				var e = this;
				n.elementPaletteEdit.isEditMode &amp;&amp; (this.modifyButtonSet = cc.find("Canvas/layer_edit_level/samples/elem_modify_buts"), this.elemTouchPad = cc.find("Canvas/layer_edit_level/samples/elem_touch_pad"), this.mainContainer = cc.find("Canvas/play_area/map"), this.previewContainer = cc.find("Canvas/layer_edit_level/map"), n.utils.addButtonComp(cc.find("Canvas/layer_edit_level/but_delete_elem"),
				function() {
					return e.deleteSelectedElem()
				}), n.utils.addButtonComp(cc.find("Canvas/layer_edit_level/but_preview"),
				function() {
					cc.find("Canvas/layer_edit_level/but_edit").active = !0,
					n.elementPaletteEdit.isPreviewing = !0,
					e.previewContainer.removeAllChildren(),
					e.mainContainer.children.map(function(t) {
						var i = n.utils.copyNodeTo(t, e.previewContainer); [i.getChildByName("elem_touch_pad"), i.getChildByName("elem_modify_buts")].map(function(e) {
							return e &amp;&amp; e.removeFromParent()
						}),
						Object.assign(i, t.orgParams),
						n.elementInit[t.elemCode] &amp;&amp; n.elementInit[t.elemCode](i, t.orgParams || {}),
						["elemCode", "isMainChar", "isSnake", "isPrincess", "isEnemy", "isWinTarget", "isTargetOfEnemies", "hasWeapon", "animSuffix", "visualWidth", "visualHeight"].map(function(e) {
							return i[e] = t[e]
						}),
						i.setDie &amp;&amp; n.spineUtils.runSpineNodeAnim(i, "Idle", !0)
					}),
					e.mainContainer.active = !1,
					e.previewContainer.active = !0,
					cc.director.getPhysicsManager().enabled = !0
				},
				!1), n.utils.addButtonComp(cc.find("Canvas/layer_edit_level/but_edit"),
				function() {
					cc.find("Canvas/layer_edit_level/but_edit").active = !1,
					n.elementPaletteEdit.isPreviewing = !1,
					e.mainContainer.children.map(function(t) {
						n.utils.copyNodeTo(t, e.previewContainer)
					}),
					e.mainContainer.active = !0,
					e.previewContainer.active = !1,
					cc.director.getPhysicsManager().enabled = !1
				},
				!1), setTimeout(function() {
					n.utils.setInterval(function() {
						return e.recognizeAllMapElems()
					},
					500)
				},
				100))
			},
			recognizeAllMapElems: function() {
				var e = this;
				this.mainContainer.children.map(function(t) {
					e.setUpElemNode(t, !0)
				})
			},
			selectElem: function(e) {
				o.log("elementModify &gt;&gt; selectElem (" + e.name + ")"),
				this.modifyButtonSet.removeFromParent(),
				e.addChild(this.modifyButtonSet),
				this.setUpElemNode(e),
				this.selectedElemNode = e,
				n.elementPropsEdit.onSelect(e)
			},
			setUpElemNode: function(e, t) {
				var i = this;
				void 0 === t &amp;&amp; (t = !1);
				var c = e.touchPadNode,
				a = !!e.touchPadNode;
				if (!c) {
					c = e.touchPadNode = n.utils.copyNodeTo(this.elemTouchPad, e);
					var l, r = e.position,
					s = n.utils.getGlobalPosition(e);
					n.utils.singleTouchSet(c,
					function(t) {
						o.log(" touch start!!!!!!!!! "),
						l = n.utils.getGlobalPosition(e).sub(t),
						i.selectElem(e)
					},
					function(t) {
						e.position = r.add(t.sub(s)).add(l)
					},
					function() {
						n.elementPropsEdit.updateSelectedElem()
					})
				}
				if (!t || !a) {
					var p = cc.find("elem_modify_rect", this.modifyButtonSet);
					p.width = this.modifyButtonSet.width = c.width = e.visualWidth || e.width || 100,
					p.height = this.modifyButtonSet.height = c.height = e.visualHeight || e.height || 100,
					p.anchorX = c.anchorX = e.anchorX,
					p.anchorY = c.anchorY = e.anchorY,
					"elem_double_latch" == e.name &amp;&amp; (p.anchorX = c.anchorX = 0, p.anchorY = c.anchorY = 1)
				}
				return c
			},
			deleteSelectedElem: function() {
				this.selectedElemNode &amp;&amp; this.selectedElemNode.removeFromParent()
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	elem_palette_edit: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "e2acdHKU1lKErtlPcOQpAsY", "elem_palette_edit"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.elementPaletteEdit = void 0;
		var n = e("../all_modules");
		n._,
		i.elementPaletteEdit = {
			isEditMode: !1,
			isPreviewing: !1,
			init: function() {
				cc.find("Canvas/layer_edit_level").active = this.isEditMode,
				cc.find("Canvas/play_area/but_select_level").active = this.isEditMode,
				this.isEditMode &amp;&amp; (cc.director.getPhysicsManager().enabled = !1, this.renderElemButList())
			},
			renderElemButList: function() {
				var e = cc.find("Canvas/layer_edit_level/elem_palette"),
				t = cc.find("Canvas/layer_edit_level/samples/sample_elem_but"),
				i = n.elementFactory.sampleNodes,
				o = function(i) {
					if (["decorBottomWall", "decorCatEar"].includes(i)) return "continue";
					var o = n.utils.copyNodeTo(t, e);
					n.utils.setLabelText(o.getChildByName("label"), i),
					setTimeout(function() {
						o.width = o.getChildByName("label").width + 10
					},
					300),
					n.utils.addButtonComp(o,
					function() {
						var e = n.elementFactory.new(i, {});
						e.zIndex = 9999,
						n.elementModify.selectElem(e)
					})
				};
				for (var c in i) o(c)
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	elem_props_edit: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "84db22URMdOTKNkSjxCb0Rl", "elem_props_edit"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.elementPropsEdit = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.elementPropsEdit = {
			selectedElemNode: null,
			propsContainer: new cc.Node,
			labelWidth: new cc.Node,
			labelHeight: new cc.Node,
			dblLatch: new cc.Node,
			labelPartCountComp: new cc.EditBox,
			dblLatchWidthComp: new cc.EditBox,
			dblLatchRangeComp: new cc.EditBox,
			dblLatchAngleComp: new cc.EditBox,
			toggleDblLatchFlipComp: new cc.Toggle,
			angleSliderComp: new cc.Slider,
			toggleTurnLeftComp: new cc.Toggle,
			toggleHasWeaponComp: new cc.Toggle,
			init: function() {
				var e = this;
				this.propsContainer = cc.find("Canvas/layer_edit_level/props_section"),
				this.labelWidth = cc.find("label_width", this.propsContainer),
				this.labelHeight = cc.find("label_heght", this.propsContainer),
				this.dblLatch = cc.find("double_latch", this.propsContainer),
				this.labelPartCountComp = cc.find("label_part_count", this.propsContainer).getComponent(cc.EditBox),
				this.dblLatchWidthComp = cc.find("latch_width", this.dblLatch).getComponent(cc.EditBox),
				this.dblLatchRangeComp = cc.find("latch_range", this.dblLatch).getComponent(cc.EditBox),
				this.dblLatchAngleComp = cc.find("latch_angle", this.dblLatch).getComponent(cc.EditBox),
				this.toggleDblLatchFlipComp = cc.find("toggle_flip_bouble_latch", this.dblLatch).getComponent(cc.Toggle),
				this.angleSliderComp = cc.find("angle_slider", this.propsContainer).getComponent(cc.Slider),
				this.toggleTurnLeftComp = cc.find("toggle_turn_left", this.propsContainer).getComponent(cc.Toggle),
				this.toggleHasWeaponComp = cc.find("toggle_has_weapon", this.propsContainer).getComponent(cc.Toggle),
				n.utils.addButtonComp(cc.find("Canvas/layer_edit_level/but_update_elem"),
				function() {
					return e.updateSelectedElem()
				})
			},
			onSelect: function(e) {
				e.orgParams = e.orgParams || {};
				var t = ["elem_sword", "elem_chest", "elem_bomb", "elem_trap_drop", "elem_trap_drop_trigger", "elem_double_latch"].includes(e.name) || e.name.startsWith("elem_char") || e.name.startsWith("decor_") || e.orgParams.partCount;
				this.dblLatch.active = "elem_double_latch" == e.name,
				this.dblLatchWidthComp.string = e.orgParams.latchWidth || "200",
				this.dblLatchRangeComp.string = e.orgParams.moveRange || "60",
				this.dblLatchAngleComp.string = e.orgParams.latchAngle || "0",
				this.toggleDblLatchFlipComp.isChecked = e.orgParams.isFlip,
				this.labelWidth.active = !t &amp;&amp; !["elem_wall_vert", "elem_circle_rock", "elem_trap_jaw"].includes(e.name),
				this.labelHeight.active = ["elem_platform_box", "elem_wall_vert", "elem_fake_base", "elem_big_rock"].includes(e.name),
				n.utils.setLabelText(this.labelHeight, e.orgParams.height || 100),
				n.utils.setLabelText(this.labelWidth, e.orgParams.width || 100),
				this.labelPartCountComp.node.active = e.orgParams.partCount,
				this.labelPartCountComp.string = e.orgParams.partCount || "5",
				this.angleSliderComp.node.active = !t || ["elem_trap_drop_trigger", "elem_double_latch"].includes(e.name),
				this.angleSliderComp.progress = ((e.orgParams.angle || 0) + 3600) % 360 / 360,
				this.angleSliderComp.node.getComponent("angle_slider_comp").onSlide(),
				this.toggleTurnLeftComp.node.active = e.name.startsWith("elem_char"),
				this.toggleTurnLeftComp.isChecked = "left" == e.orgParams.turnDirection,
				this.toggleHasWeaponComp.node.active = e.name.startsWith("elem_char_main"),
				this.toggleHasWeaponComp.isChecked = e.orgParams.hasWeapon,
				this.selectedElemNode = e
			},
			updateSelectedElem: function() {
				if (this.selectedElemNode &amp;&amp; this.selectedElemNode.parent) {
					var e = this.selectedElemNode,
					t = {
						width: this.getEditBoxValueIfActive(this.labelWidth),
						height: this.getEditBoxValueIfActive(this.labelHeight),
						partCount: this.getEditBoxValueIfActive(this.labelPartCountComp.node),
						latchWidth: this.getEditBoxValueIfActive(this.dblLatchWidthComp.node),
						moveRange: this.getEditBoxValueIfActive(this.dblLatchRangeComp.node),
						latchAngle: this.getEditBoxValueIfActive(this.dblLatchAngleComp.node),
						angle: this.angleSliderComp.node.activeInHierarchy ? o.floor(360 * this.angleSliderComp.progress) : 0,
						turnDirection: this.toggleTurnLeftComp.node.activeInHierarchy ? this.toggleTurnLeftComp.isChecked ? "left": "right": null,
						hasWeapon: this.toggleHasWeaponComp.node.activeInHierarchy ? this.toggleHasWeaponComp.isChecked: null,
						isFlip: this.toggleDblLatchFlipComp.node.activeInHierarchy ? this.toggleDblLatchFlipComp.isChecked: null
					};
					for (var i in t) null === t[i] &amp;&amp; delete t[i];
					e.orgParams = t,
					Object.assign(e, t),
					n.elementInit[e.elemCode] &amp;&amp; n.elementInit[e.elemCode](e, t),
					n.elementModify.selectElem(e)
				}
			},
			getEditBoxValueIfActive: function(e) {
				return e.activeInHierarchy ? parseInt(e.getComponent(cc.EditBox).string) : null
			},
			onAngleSlide: function() {}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	element_factory: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "caa58h5d6BIUbdRmx3NxXxv", "element_factory"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.elementFactory = void 0;
		var n = e("../../all_modules");
		n._,
		i.elementFactory = {
			sampleNodes: {
				singleLatch: "Canvas/sample_nodes/elem_single_latch",
				doubleLatch: "Canvas/sample_nodes/elem_double_latch",
				wallHorz: "Canvas/sample_nodes/elem_wall_horz",
				wallVert: "Canvas/sample_nodes/elem_wall_vert",
				platformBox: "Canvas/sample_nodes/elem_platform_box",
				trapJaw: "Canvas/sample_nodes/elem_trap_jaw",
				trapDrop: "Canvas/sample_nodes/elem_trap_drop",
				trapDropTrigger: "Canvas/sample_nodes/elem_trap_drop_trigger",
				squareRock: "Canvas/sample_nodes/elem_big_rock",
				circleRock: "Canvas/sample_nodes/elem_circle_rock",
				dungeon: "Canvas/sample_nodes/elem_dungeon",
				chest: "Canvas/sample_nodes/elem_chest",
				bomb: "Canvas/sample_nodes/elem_bomb",
				sword: "Canvas/sample_nodes/elem_sword",
				poisonGas: "Canvas/sample_nodes/elem_poinson_gas",
				coldGas: "Canvas/sample_nodes/elem_cold_gas",
				water: "Canvas/sample_nodes/elem_water",
				lava: "Canvas/sample_nodes/elem_lava",
				stone: "Canvas/sample_nodes/elem_stone",
				gold: "Canvas/sample_nodes/elem_gold",
				fakeBase: "Canvas/sample_nodes/elem_fake_base",
				characterMain: "Canvas/sample_nodes/elem_char_main",
				characterPrincess: "Canvas/sample_nodes/elem_char_princess",
				characterEnemy: "Canvas/sample_nodes/elem_char_enemy",
				characterSnake: "Canvas/sample_nodes/elem_char_snake",
				decorBottomWall: "Canvas/sample_nodes/decor_bottom_wall",
				decorCatEar: "Canvas/sample_nodes/decor_car_ear",
				decorWallJoint: "Canvas/sample_nodes/decor_wall_joint",
				decorWallCorner: "Canvas/sample_nodes/decor_wall_corner"
			},
			container: new cc.Node,
			init: function() {
				for (var e in this.container = cc.find("Canvas/play_area/map"), this.sampleNodes) this.sampleNodes[e] = cc.find(this.sampleNodes[e]);
				n.physicsConfig.initElementProperties()
			},
			new: function(e, t) {
				var i = n.utils.copyNodeTo(this.sampleNodes[e], this.container);
				return i.elemCode = e,
				e.startsWith("decor") &amp;&amp; (i.zIndex = 999),
				Object.assign(i, t),
				n.elementInit[e] &amp;&amp; (i.orgParams = t, n.elementInit[e](i, t)),
				i
			}
		},
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	element_init: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "a6a178+m8lPk46Yq2dMhIEf", "element_init"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.elementInit = void 0;
		var n = e("../../all_modules"),
		o = n._;
		i.elementInit = {
			singleLatch: function(e, t) {
				t.width = t.width || 200;
				var i = cc.find("root_visual_node/visual_node", e);
				i.height = t.width;
				var o = e.getChildByName("physical_node").getComponent(cc.PhysicsBoxCollider);
				o.size.width = t.width,
				o.offset.x = t.width / 2,
				o.apply();
				var c = e.getChildByName("touch_pad");
				c.width = t.width + i.parent.height,
				c.anchorX = i.parent.height / c.width,
				n.control.initControlSingleLatch(e),
				e.zIndex = 9999,
				e.active = !0,
				e.visualWidth = t.width,
				e.visualHeight = i.width + 60
			},
			doubleLatch: function(e, t) {
				t.latchWidth = t.latchWidth || 200,
				t.latchAngle = t.latchAngle || 0,
				t.moveRange = t.moveRange || 60,
				e.scaleY = t.isFlip ? -1 : 1;
				var i = cc.find("visual_node", e);
				i.height = t.latchWidth,
				i.angle = 90 + t.latchAngle,
				cc.find("visual_node/touch_pad", e).width = t.latchWidth + 50,
				e.getChildByName("key2Base").height = t.moveRange + 60;
				var c = cc.find("physic_container/physical_node", e);
				c.parent.scaleY = t.moveRange / 240;
				var a = c.getComponent(cc.PhysicsPolygonCollider); (a.points = [cc.v2(0, 10), cc.v2(t.latchWidth, 10), cc.v2(t.latchWidth, -10), cc.v2(0, -10)]).map(function(e) {
					e.rotateSelf(t.latchAngle * o.PI / 180),
					e.y /= c.parent.scaleY
				}),
				a.apply(),
				n.control.initControlDoubleLatch(e),
				e.zIndex = 9999,
				e.active = !0,
				e.visualWidth = 100,
				e.visualHeight = 100,
				e.baseAngle = e.angle + t.latchAngle,
				e.baseWidth = t.latchWidth
			},
			wallHorz: function(e, t) {
				t.width = t.width || 100,
				this.fitBoxColliderToNodeSize(e);
				var i = cc.find("visual", e);
				i.width = e.height = 25,
				i.height = e.width = t.width,
				e.zIndex = -2,
				e.active = !0
			},
			wallVert: function(e, t) {
				t.height = t.height || 100,
				this.fitBoxColliderToNodeSize(e);
				var i = cc.find("visual", e);
				i.height = e.height = t.height,
				i.width = e.width = 25,
				e.zIndex = -2,
				e.active = !0
			},
			platformBox: function(e) {
				this.fitBoxColliderToNodeSize(e),
				e.active = !0
			},
			squareRock: function(e) {
				this.fitBoxColliderToNodeSize(e),
				e.active = !0
			},
			circleRock: function(e) {
				e.active = !0
			},
			dungeon: function(e) {
				e.active = !0,
				e.visualWidth = 280
			},
			chest: function(e) {
				e.isWinTarget = !0,
				e.active = !0
			},
			trapJaw: function(e) {
				e.active = !0,
				e.zIndex = 10,
				e.visualHeight = 100
			},
			trapDrop: function(e) {
				e.active = !0,
				e.zIndex = 10
			},
			trapDropTrigger: function(e) {
				e.active = !0,
				e.zIndex = 10
			},
			bomb: function(e) {
				e.active = !0
			},
			sword: function(e) {
				e.isWinTarget = !0,
				e.active = !0
			},
			poisonGas: function(e, t) {
				t.partCount = t.partCount || 5,
				this.massProduceParts(e.children[0], t.partCount).map(function(e) {
					return e.active = !0
				})
			},
			coldGas: function(e, t) {
				t.partCount = t.partCount || 5,
				this.massProduceParts(e.children[0], t.partCount).map(function(e) {
					return e.active = !0
				})
			},
			water: function(e, t) {
				t.partCount = t.partCount || 5,
				this.massProduceParts(e.children[0], t.partCount).map(function(e) {
					return e.active = !0
				})
			},
			lava: function(e, t) {
				t.partCount = t.partCount || 5,
				this.massProduceParts(e.children[0], t.partCount).map(function(e) {
					e.active = !0,
					e.scale -= .4 * o.random(),
					e.getChildByName("fx_lava_spark").getComponent(cc.ParticleSystem).resetSystem()
				}),
				n.utils.setTimeout(function() {
					n.audio.playSound("lava", .8, !0)
				},
				500)
			},
			stone: function(e, t) {
				t.partCount = t.partCount || 5,
				this.massProduceParts(e.children[0], t.partCount).map(function(e) {
					e.active = !0,
					e.scale -= .4 * o.random()
				})
			},
			gold: function(e, t) {
				t.partCount = t.partCount || 5,
				this.massProduceParts(e.children[0], t.partCount).map(function(e) {
					e.isWinTarget = !0,
					e.scale -= .4 * o.random(),
					e.getComponent(cc.RigidBody).gravityScale *= 1 - .4 * o.random(),
					o.random() &lt; .8 || (e.getChildByName("gold").active = !1, e.getChildByName(o.random() &lt; .5 ? "dymond": "ruby").active = !0)
				}),
				e.isWinTarget = !0,
				e.active = !0
			},
			fakeBase: function(e, t) {
				t.height = t.height || 100,
				t.width = t.width || 150,
				e.activeHeight = t.height,
				e.height = 4,
				this.fitBoxColliderToNodeSize(e),
				e.getComponent(cc.PhysicsBoxCollider).offset.y = e.height / 2,
				e.isBaseActive = !1,
				e.lavaPieceArr = [],
				e.stoneCountToActive = o.round(t.width / 40),
				e.stoneCollided = 0,
				e.active = !0,
				e.visualHeight = t.height || 100
			},
			characterMain: function(e, t) {
				var i = this;
				this.createMoveTarget(e),
				e.active = !0,
				e.isMainChar = !0,
				e.isTargetOfEnemies = !0,
				e.hasWeapon = t.hasWeapon,
				e.animSuffix = t.hasWeapon ? "": "-noweapon",
				e.isFreeToAttack = !0,
				e.moveSpeed = n.physicsConfig.characterMain.moveSpeed,
				e.scaleX = "left" == t.turnDirection ? -1 : 1,
				n.spineUtils.runSpineNodeAnim(e, "Idle", !0),
				this.setUpMainReachTargets(e),
				e.setDie = function(t, n) {
					return i.setDieMain(e, n)
				}
			},
			characterPrincess: function(e, t) {
				var i = this;
				e.active = !0,
				e.isWinTarget = !0,
				e.isPrincess = !0,
				e.isTargetOfEnemies = !0,
				e.scaleX = "left" == t.turnDirection ? -1 : 1,
				e.setDie = function(t, n) {
					return i.setDiePrincess(e, n)
				},
				n.audio.playSound("meow", .4)
			},
			characterEnemy: function(e, t) {
				var i = this;
				this.createMoveTarget(e),
				e.active = !0,
				e.isEnemy = !0,
				e.zIndex = -1,
				e.scaleX = "left" == t.turnDirection ? -1 : 1,
				e.isFreeToAttack = !0,
				e.moveSpeed = n.physicsConfig.characterEnemy.moveSpeed,
				e.setDie = function(t, n) {
					return i.setDieEnemy(e, n)
				},
				this.setUpEnemyReachTargets(e),
				n.audio.playSound("boss_idle", 1)
			},
			characterSnake: function(e, t) {
				var i = this;
				this.createMoveTarget(e),
				e.active = !0,
				e.isEnemy = !0,
				e.isSnake = !0,
				e.zIndex = -1,
				e.scaleX = "left" == t.turnDirection ? -1 : 1,
				e.moveSpeed = n.physicsConfig.characterSnake.moveSpeed,
				e.isFreeToAttack = !0,
				n.utils.setTimeout(function() {
					e.parent &amp;&amp; e.parent.children.filter(function(e) {
						return e.isWinTarget &amp;&amp; "elem_sword" != e.name
					}).length
				},
				500),
				e.setDie = function(t, n) {
					return i.setDieSnake(e, n)
				},
				this.setUpSnakeReachTargets(e)
			},
			fitBoxColliderToNodeSize: function(e) {
				var t = e.getComponent(cc.PhysicsBoxCollider);
				t.size.width = e.width,
				t.size.height = e.height,
				t.apply()
			},
			massProduceParts: function(e, t) {
				var i = [];
				e.parent.children.filter(function(t) {
					return t != e &amp;&amp; "elem_touch_pad" != t.name
				}).map(function(e) {
					return e.removeFromParent()
				});
				for (var o = 0; o &lt; t; o++) {
					var c = n.utils.copyNodeTo(e, e.parent);
					c.x += n.utils.random0ToX(100) - 30,
					c.y += n.utils.random0ToX(100) - 30,
					c.active = !0,
					i.push(c)
				}
				return i
			},
			createMoveTarget: function(e) {
				var t = e.moveTarget = n.utils.copyNodeTo(cc.find("Canvas/sample_nodes/elem_char_move_target"), e.parent);
				t.linkedChar = e,
				n.charMove.setMovetargetGlobalPos(t, cc.v2(9999, 0)),
				t.active = !0
			},
			setUpMainReachTargets: function(e) {
				n.utils.setTimeout(function() {
					if (e.parent) {
						var t = e.parent.children.filter(function(e) {
							return e.isWinTarget
						});
						t.map(function(e) {
							return t.push.apply(t, e.children.filter(function(e) {
								return e.isWinTarget
							}))
						}),
						o.log(" targetArr = " + t.map(function(e) {
							return e.name
						}) + " "),
						t.length &amp;&amp; cc.director.getScheduler().schedule(function() {
							e.isDead || e.movingGlobalPointArr || n.charMove.planMoveToTargets(e, t)
						},
						e, .5)
					}
				},
				500)
			},
			setUpEnemyReachTargets: function(e) {
				n.utils.setTimeout(function() {
					if (e.parent) {
						var t = e.parent.children.filter(function(e) {
							return e.isTargetOfEnemies || e.isSnake
						});
						t.map(function(e) {
							return t.push.apply(t, e.children.filter(function(e) {
								return e.isTargetOfEnemies || e.isSnake
							}))
						}),
						o.log("setUpEnemyReachTargets &gt;&gt; targetArr = " + t.map(function(e) {
							return e.name
						}) + " "),
						t.length &amp;&amp; cc.director.getScheduler().schedule(function() {
							e.isDead || e.movingGlobalPointArr || (t = t.filter(function(e) {
								return ! e.isDead
							}), e.isFreeToAttack &amp;&amp; n.charMove.planMoveToSameLevelTarget(e, t))
						},
						e, .1)
					}
				},
				500)
			},
			setUpSnakeReachTargets: function(e) {
				n.utils.setTimeout(function() {
					if (e.parent) {
						var t = e.parent.children.filter(function(e) {
							return e.isTargetOfEnemies
						});
						t.map(function(e) {
							return t.push.apply(t, e.children.filter(function(e) {
								return e.isTargetOfEnemies
							}))
						}),
						o.log(" targetArr = " + t.map(function(e) {
							return e.name
						}) + " "),
						t.length &amp;&amp; cc.director.getScheduler().schedule(function() {
							e.isDead || e.movingGlobalPointArr || (t = t.filter(function(e) {
								return ! e.isDead
							}), n.charMove.planMoveToSameLevelTarget(e, t))
						},
						e, .5)
					}
				},
				500)
			},
			setDieSnake: function(e, t) {
				var i = this;
				if (!e.isDead) {
					e.isDead = !0,
					n.charMove.stopCharacter(e),
					n.elementInit.setColorDie(e, t);
					var o = e.parent.children.filter(function(e) {
						return e.isEnemy
					}); ! e.parent.children.filter(function(e) {
						return e.isWinTarget
					}).length &amp;&amp; o.every(function(e) {
						return e.isDead
					}) &amp;&amp; n.gameFlow.onWin(function() {
						i.callbackMainCharWhenDefeatAllEnemy()
					}),
					n.spineUtils.runSpineNodeAnim(e, "Die"),
					n.audio.playSound("snake_die")
				}
			},
			setDieEnemy: function(e, t) {
				var i = this;
				if (!e.isDead) {
					e.isDead = !0,
					n.charMove.stopCharacter(e),
					n.elementInit.setColorDie(e, t);
					var o = e.parent.children.filter(function(e) {
						return e.isEnemy
					}); ! e.parent.children.filter(function(e) {
						return e.isWinTarget &amp;&amp; "elem_sword" != e.name
					}).length &amp;&amp; o.every(function(e) {
						return e.isDead
					}) &amp;&amp; n.gameFlow.onWin(function() {
						i.callbackMainCharWhenDefeatAllEnemy()
					}),
					n.spineUtils.runSpineNodeAnim(e, "Die"),
					n.audio.playSound("dog_die")
				}
			},
			setDiePrincess: function(e, t, i) {
				void 0 === i &amp;&amp; (i = 1e3),
				e.isDead || (e.isDead = !0, n.elementInit.setColorDie(e, t), n.spineUtils.runSpineNodeAnim(e, "Die", !1,
				function() {
					var e = cc.find("Canvas/play_area/map/elem_char_main");
					e.isDead || e.setDie()
				}), n.audio.playSound("princess_die"), n.gameFlow.onLose())
			},
			setDieMain: function(e, t, i) {
				void 0 === i &amp;&amp; (i = 1e3),
				e.isDead || (e.isDead = !0, n.charMove.stopCharacter(e), n.elementInit.setColorDie(e, t), n.spineUtils.runSpineNodeAnim(e, "Die", !1,
				function() {}), n.audio.playSound("main_die"), n.gameFlow.onLose())
			},
			setColorDie: function(e, t) {
				t &amp;&amp; ( - 1 != t.indexOf("lava") ? e.children[0].color = cc.color("#cc00000") : -1 != t.indexOf("bomb") ? e.children[0].color = cc.color("#cc00000") : -1 != t.indexOf("cold_gas") ? e.children[0].color = cc.color("#50CAFC") : -1 != t.indexOf("poinson_gas") &amp;&amp; (e.children[0].color = cc.color("#55b03a")))
			},
			callbackMainCharWhenDefeatAllEnemy: function() {
				var e = cc.find("Canvas/play_area/map/elem_char_main");
				n.spineUtils.runSpineNodeAnim(e, "Win")
			}
		},
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	element_utils: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "c512cbIbjRJdIqs94g+AKFE", "element_utils"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.elementUtils = void 0,
		e("../../all_modules")._,
		i.elementUtils = {
			colliderNode2RootElement: function(e) {
				for (var t = e,
				i = 20; i--&amp;&amp;t;) {
					if (t.name.startsWith("elem_")) return t;
					t = t.parent
				}
			}
		},
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	en_US: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "ed8b6IpI3BL66H0vlrvE6Oy", "en_US"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var n = e("../../all_modules");
		n._,
		i.
	default = {
			commonContentList: {},
			specialCharacter: "xxx",
			message: {
				sendMessageScore: {
					content: function() {
						return n.user.name + " has " + n.user.score + " when playing Dicedom"
					},
					cta: function() {
						return "PLAY NOW"
					}
				}
			},
			alertContent: {
				somethingWrong: "Oops!\n\nSomething went wrong"
			},
			labelList: {
				"Canvas/shares/sharepicture/label_score_intro": "SCORE",
				"Canvas/messages/ScoreMessenger/lb_score": "Score:",
				"Canvas/layer_pause/header_bg/label_header": "Pause",
				"Canvas/layer_pause/btn_continue/label_continue": "CONTINUE",
				"Canvas/layer_pause/btn_restart/label_restart": "REPLAY",
				"Canvas/layer_video_continue/header_bg/label_header": "Out of moves",
				"Canvas/layer_video_continue/btn_save_me/label_continue": "WATCH",
				"Canvas/layer_video_continue/btn_cancel/label_restart": "CANCEL",
				"Canvas/layer_video_continue/label_noti": "Oops! Gameover\nWatch a short video to keep\nplaying",
				"Canvas/layer_challenge_friend/header/decor/label_great": "GREAT",
				"Canvas/layer_challenge_friend/content_bg/label_score": function(e) {
					return "Your score " + e
				},
				"Canvas/layer_challenge_friend/content_bg/players/label_vs": "VS",
				"Canvas/layer_challenge_friend/content_bg/btn_another_friend/label_restart": "Play another friend",
				"Canvas/layer_challenge_friend/content_bg/btn_play/label_play": "PLAY",
				"Canvas/layer_challenge_friend/btn_cancel/label_cancel": "CANCEL",
				"Canvas/layer_game_over/content_bg/label_score_intro": "SCORE",
				"Canvas/layer_game_over/btn_replay/label_restart": "REPLAY",
				"Canvas/layer_alert/content_bg/label_message": function(e) {
					return n.language.currentLangFile.alertContent[e] || ""
				},
				"Canvas/layer_alert/header_bg/label_header": "Notice",
				"Canvas/layer_alert/btn_ok/label_restart": "OK",
				"Canvas/layer_loading/label_loading": "   LOADING...",
				"Canvas/layer_share_iq/header_bg/label_header": function(e) {
					return "Congrats! Your IQ is higher\nthan " + e + "% Dicedom players"
				},
				"Canvas/shares_iq_image/sharepicture/label_score_intro": "Your IQ Score is",
				"Canvas/layer_share_iq/content_bg/label_iq_intro": "Your IQ Score is",
				"Canvas/layer_share_iq/btn_share/label_share": "SHARE"
			}
		},
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	fake_base_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "86df0I5M25KMJFyHQtkG7DB", "fake_base_comp");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var a = e("../../all_modules"),
		l = (a._, cc._decorator),
		r = l.ccclass,
		s = (l.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			return o(t, e),
			t.prototype.onBeginContact = function(e, t, i) {
				var n = this,
				o = a.elementUtils.colliderNode2RootElement,
				c = this.node,
				l = i.node,
				r = o(l);
				if (!c.isBaseActive) {
					if (["elem_big_rock", "elem_circle_rock"].includes(r.name)) return c.stoneCollided = c.stoneCountToActive,
					c.lavaPieceArr.length = 0,
					this.checkSetActive();
					if (["elem_stone", "elem_lava"].includes(r.name)) if (c.stoneCollided++, "elem_lava" != r.name || l.isStone) this.checkSetActive();
					else if (c.lavaPieceArr.push(l), 1 == c.lavaPieceArr.length) var s = a.utils.setInterval(function() {
						n.checkSetActive() &amp;&amp; a.utils.clearInterval(s)
					},
					500)
				}
			},
			t.prototype.checkSetActive = function() {
				var e = this.node;
				if (! (e.stoneCollided &lt; e.stoneCountToActive || e.lavaPieceArr.some(function(e) {
					return ! e.isStone
				}))) return e.isBaseActive = !0,
				console.log(" thisNode.isBaseActive = true &gt;&gt; thisNode.activeHeight = " + e.activeHeight + " "),
				e.height = e.activeHeight,
				a.elementInit.fitBoxColliderToNodeSize(e),
				e.getComponent(cc.PhysicsBoxCollider).offset.y = e.height / 2,
				!0
			},
			c([r], t)
		} (cc.Component));
		i.
	default = s,
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	free_button_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "6eb90nf54FNTralkupRNyFQ", "free_button_comp"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var n = e("../all_modules");
		n._,
		cc.Class({
			extends: cc.Component,
			freeHandler: function(e) {
				e.target.freeButtonHandlerFunc &amp;&amp; (e.target.freeButtonHandlerFunc(e.target), n.audio.playSoundClickButton())
			}
		}),
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	fx: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "1dea3RzBLJB9KCFmazB2GAA", "fx"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.fx = void 0;
		var n = e("../all_modules");
		n._,
		i.fx = {
			init: function() {},
			bubblePromo: function(e) {
				e.children.forEach(function(e) {
					e.stopAllActions(),
					e.runAction(cc.repeatForever(cc.sequence(cc.scaleTo(1, 1.1), cc.scaleTo(1, 1))))
				})
			},
			rotateForever: function(e) {
				e.runAction(cc.repeatForever(cc.rotateBy(10, 360)))
			},
			bubbleForever: function(e, t, i, n, o) {
				void 0 === t &amp;&amp; (t = .5),
				void 0 === i &amp;&amp; (i = 0),
				void 0 === n &amp;&amp; (n = 1),
				void 0 === o &amp;&amp; (o = 1.2);
				var c = e.orgScale || e.scale;
				e.orgScale || (e.orgScale = c),
				e.stopAllActions(),
				e.runAction(cc.repeatForever(cc.sequence(cc.delayTime(i), cc.scaleTo(t, c * o), cc.scaleTo(t, c * n), cc.scaleTo(t, c * o), cc.scaleTo(t, c * n))))
			},
			bubble: function(e, t, i, n, o, c) {
				void 0 === i &amp;&amp; (i = .5),
				void 0 === n &amp;&amp; (n = 0),
				void 0 === o &amp;&amp; (o = 1),
				void 0 === c &amp;&amp; (c = 1.2);
				var a = e.orgScale || e.scale;
				e.orgScale || (e.orgScale = a),
				e.stopAllActions(),
				e.runAction(cc.sequence(cc.delayTime(n), cc.scaleTo(i, a * c), cc.scaleTo(i, a * o), cc.scaleTo(i, a * c), cc.scaleTo(i, a * o), cc.callFunc(function() {
					t &amp;&amp; t()
				})))
			},
			fxScoreNormal: function() {},
			fxSmokeAt: function(e) {
				var t = cc.find("Canvas/sample_nodes/fx_smoke"),
				i = cc.find("Canvas/play_area/fx_container"),
				o = e.fxSmoke = n.utils.copyNodeTo(t, i);
				n.utils.setGlobalPositionToNode(o, e),
				o.getComponent(cc.ParticleSystem).resetSystem()
			},
			hideFxSmoke: function(e) {
				e.fxSmoke &amp;&amp; e.fxSmoke.removeFromParent(!0)
			},
			fxWin: function(e) {
				var t = this;
				n.ui.showNagScreen(),
				n.control.hideLastPointFx(),
				n.control.touchPadHandler.touchEndFunc();
				var i = cc.find("Canvas/play_area/map_layer_nails").children;
				i.map(function(e) {
					n.fx.fxScoreNormal(e),
					n.fx.fxSmokeAt(e)
				}),
				setTimeout(function() {
					n.ui.hideNagScreen(),
					i.map(function(e) {
						return t.hideFxSmoke(e)
					}),
					e &amp;&amp; e()
				},
				2500),
				setTimeout(function() {
					n.audio.playSound("Next level")
				},
				500)
			},
			freeToolTipNodeArr: [],
			showScoreToolTip: function(e, t, i, o, c, a, l, r) {
				var s = this;
				void 0 === i &amp;&amp; (i = 60),
				void 0 === c &amp;&amp; (c = 100),
				void 0 === a &amp;&amp; (a = 1.6),
				void 0 === l &amp;&amp; (l = .2),
				void 0 === r &amp;&amp; (r = 0);
				var p = cc.find("Canvas/play_area/fx_container/sample_score_tool_tip"),
				g = this.freeToolTipNodeArr.pop() || n.utils.copyNodeTo(p, cc.find("Canvas/play_area/fx_container"));
				n.utils.setLabelText(g, e),
				n.utils.setGlobalPositionToNode(g, t),
				g.y += i,
				g.active = !0,
				g.zIndex = 999,
				g.opacity = 0,
				g.runAction(cc.sequence(cc.fadeIn(l), cc.delayTime(r), cc.spawn(cc.moveBy(a, cc.v2(0, c)), cc.fadeOut(a)), cc.callFunc(function() {
					g.active = !1,
					s.freeToolTipNodeArr.push(g),
					o &amp;&amp; o()
				})))
			},
			freeFlyScoreNodeArr: [],
			singleScoreLabelFly: function(e, t, i) {
				var o = this;
				void 0 === i &amp;&amp; (i = .3);
				var c = cc.find("Canvas/play_area/fx_container/sample_label_fly_score"),
				a = this.freeFlyScoreNodeArr.pop() || n.utils.copyNodeTo(c, cc.find("Canvas/play_area/fx_container"));
				n.utils.setLabelText(a, t),
				n.utils.setGlobalPositionToNode(a, e);
				var l = cc.find("Canvas/play_area/label_score"),
				r = n.utils.getGlobalPosition(l);
				a.active = !0,
				a.zIndex = 999;
				var s = n.utils.global2LocalPosDiff(a, r.x, r.y);
				a.runAction(cc.sequence(cc.moveBy(i, s).easing(cc.easeIn(1.4)), cc.callFunc(function() {
					a.active = !1,
					o.freeFlyScoreNodeArr.push(a)
				})))
			},
			multiScoreLabelFly7: function(e, t, i) {
				var o = this,
				c = "+" + n.utils.localizeNumber(parseInt(t / e.length));
				e.map(function(e, t) {
					var i = cc.find("Canvas/play_area/map/Image_HexBlock_" + e);
					n.utils.setTimeout(function() {
						o.singleScoreLabelFly(i, c)
					},
					70 * t)
				}),
				n.utils.setTimeout(function() {
					return i &amp;&amp; i()
				},
				70 * e.length)
			},
			multiScoreLabelFlyNormal: function(e, t, i, o) {
				var c = this,
				a = "+" + n.utils.localizeNumber(parseInt(i / t.length));
				t.map(function(t, i) {
					n.utils.setTimeout(function() {
						c.singleScoreLabelFly(e, a)
					},
					70 * i)
				}),
				n.utils.setTimeout(function() {
					return o &amp;&amp; o()
				},
				70 * t.length)
			},
			playNodeAnim: function(e, t, i) {
				var n = e.getComponent(cc.Animation);
				n.play(t || n.defaultClip.name).repeatCount = 1,
				n.on("finished",
				function() {
					n.off("finished"),
					i &amp;&amp; i()
				})
			},
			showFxBomb: function(e) {
				var t = cc.find("Canvas/sample_nodes/fx_bomb"),
				i = cc.find("Canvas/play_area/fx_container"),
				o = n.utils.copyNodeTo(t, i);
				n.utils.setGlobalPositionToNode(o, e),
				n.spineUtils.runSpineNodeAnim(t, "animation")
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	game_flow: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "6679a9nddJLA7t+PptHmICC", "game_flow"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.gameFlow = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.gameFlow = {
			gameStartTime: 0,
			isUserWin: !1,
			currentLevelIndex: 0,
			currentLevelInfo: null,
			isShowingResult: !1,
			isWinPending: !1,
			isLose: !1,
			winTimerVar: null,
			animationMainCharacterWin: null,
			init: function() {
				var e = this;
				n.utils.addButtonComp(cc.find("Canvas/layer_game_over/btn_watch"),
				function() {
					return e.showVideoSkipLevel()
				}),
				n.utils.addButtonComp(cc.find("Canvas/play_area/btn_watch_skip"),
				function() {
					return e.showVideoSkipLevel()
				})
			},
			showVideoSkipLevel: function() {
				n.utilsFB.logByLevel("ev_click_skip_level"),
				n.video.showVideo(function() {
					n.ui.hideLayer("layer_game_over"),
					n.data.saveData({
						last_level: n.gameFlow.currentLevelIndex + 1
					}),
					n.gameFlow.playNextLevel()
				})
			},
			onWin: function(e) {
				var t = this;
				this.isLose || this.isWinPending || this.isShowingResult || (e &amp;&amp; e(), this.isWinPending = !0, this.winTimerVar = n.utils.setTimeout(function() {
					n.user.userChallengeInfo ? t.showWinChallenge() : t.showWinScreen()
				},
				2e3))
			},
			onLose: function() {
				var e = this;
				this.isLose || this.isShowingResult || (this.isLose = !0, this.isWinPending &amp;&amp; n.utils.clearTimeout(this.winTimerVar), n.ui.showNagScreen(), n.utils.setTimeout(function() {
					return e.showLoseScreen()
				},
				1500))
			},
			showWinScreen: function() {
				if (n.utilsFB.logByLevel("ev_win_level"), n.elementPaletteEdit.isEditMode) return alert("WIN!");
				this.isShowingResult = !0,
				n.ui.showLayer("layer_win"),
				n.audio.playSound("win"),
				n.utils.setTimeout(function() {
					n.audio.playSound("meow_after_win_sound")
				},
				2e3);
				var e = cc.find("Canvas/play_area/map/elem_char_main"),
				t = cc.find("Canvas/layer_win/main");
				t.animSuffix = e.animSuffix,
				n.spineUtils.runSpineNodeAnim(t, "Win", !0);
				var i = cc.find("Canvas/layer_win/victory");
				n.spineUtils.runSpineNodeAnim(i, "Win", !1),
				n.data.saveData({
					last_level: this.currentLevelIndex + 1
				}),
				n.progressBar.addGoldForThisLevel(),
				n.promo.shufflePromoList()
				console.log(n);
				if((Math.random()*100)&lt;=40){
					if (typeof sdk !== 'undefined' &amp;&amp; sdk.showBanner !== 'undefined') {
						sdk.showBanner();
						};

					};

			},
			showWinChallenge: function() {
				if (n.elementPaletteEdit.isEditMode) return alert("WIN!");
				if (this.isShowingResult = !0, n.user.userChallengeInfo) {
					var e = n.user.userChallengeInfo.photo,
					t = cc.find("Canvas/layer_pass_challenge/btn_pass_challenge/mark/avata");
					cc.assetManager.loadRemote(e,
					function(e, i) {
						if (!e) {
							var n = new cc.SpriteFrame(i);
							t.getComponent(cc.Sprite).spriteFrame = n,
							t.width = cc.find("Canvas/layer_pass_challenge/btn_pass_challenge/mark").width,
							t.height = cc.find("Canvas/layer_pass_challenge/btn_pass_challenge/mark").height
						}
					})
				}
				n.ui.showLayer("layer_pass_challenge"),
				n.audio.playSound("win"),
				n.utils.setTimeout(function() {
					n.audio.playSound("meow_after_win_sound")
				},
				2e3);
				var i = cc.find("Canvas/play_area/map/elem_char_main"),
				o = cc.find("Canvas/layer_pass_challenge/main");
				o.animSuffix = i.animSuffix,
				n.spineUtils.runSpineNodeAnim(o, "Win", !0)
			},
			showLoseScreen: function() {
				if (n.utilsFB.logByLevel("ev_lose_level"), n.elementPaletteEdit.isEditMode) return alert("GAME OVER!");
				this.isShowingResult = !0,
				n.ui.hideNagScreen(),
				n.ui.showLayer("layer_game_over"),
				n.audio.playSound("Lose");
				var e = cc.find("Canvas/play_area/map/elem_char_main"),
				t = cc.find("Canvas/layer_game_over/main");
				if (t.animSuffix = e.animSuffix, n.spineUtils.runSpineNodeAnim(t, "Die"), !n.iapUnlimitedLives.isPaid) {
					n.game.use1life();
					var i = cc.find("Canvas/layer_game_over/defeat");
					n.spineUtils.runSpineNodeAnim(i, "Lose", !1)
				}
			},
			startNewGame: function(e) {
				this.isShowingResult = !1,
				this.isWinPending = !1,
				this.isLose = !1,
				this.currentLevelIndex = e = e || this.currentLevelIndex || 1,
				n.ui.updateLevel();
				var t = this.currentLevelInfo = n.levelConfigList[this.currentLevelIndex];
				n.utilsFB.logByLevel("ev_play_level");
				var i = Object.keys(n.levelConfigList).length;
				if (e &amp;&amp; !t) {
					var c = o.abs(i - n.levelReapeatStartIndex),
					a = o.abs(e - n.levelReapeatStartIndex),
					l = n.levelReapeatStartIndex + a % c;
					t = n.levelConfigList[l] || {},
					console.log(" repeatLevelCount=" + c + " // distance = " + a + " // oldLevelIndex=" + l + " ")
				}
				n.map.renderMap(t),
				n.gameFlow.validateIsChallengeOrNot() ? n.progressBar.onLevelChanged() : this.runAnimVs(),
				this.cloneShareChallengePos(),
				n.tut.isTutDone &amp;&amp; n.dailyRewartds.callbackDailyHasTut &amp;&amp; (n.dailyRewartds.callbackDailyHasTut(), n.dailyRewartds.callbackDailyHasTut = null)
			},
			validateIsChallengeOrNot: function() {
				var e = cc.find("Canvas/play_area/progress_bar"),
				t = cc.find("Canvas/play_area/challenge_mode");
				return n.user.userChallengeInfo ? (e.active = !1, t.active = !0, cc.find("Canvas/play_area/btn_skip").active = !0) : (e.active = !0, t.active = !1, cc.find("Canvas/play_area/btn_skip").active = !1),
				e.active
			},
			runAnimVs: function() {
				var e = cc.find("Canvas/play_area/challenge_mode/vs");
				n.fx.bubbleForever(e)
			},
			cloneShareChallengePos: function() {
				n.utils.setTimeout(function() {
					var e = cc.find("Canvas/share_challenge/content"),
					t = cc.instantiate(cc.find("Canvas/share_challenge/bg_question")),
					i = cc.instantiate(cc.find("Canvas/share_challenge/bg_level")),
					o = cc.instantiate(n.elementFactory.container);
					e.getChildByName(n.elementFactory.container.name) &amp;&amp; e.getChildByName(n.elementFactory.container.name).destroy(),
					e.getChildByName("bg_question") &amp;&amp; e.getChildByName("bg_question").destroy(),
					e.getChildByName("bg_level") &amp;&amp; e.getChildByName("bg_level").destroy(),
					o.scale = .55,
					o.parent = e,
					0 == t.active &amp;&amp; (t.active = !0),
					t.parent = e,
					0 == i.active &amp;&amp; (i.active = !0),
					i.parent = e
				},
				500)
			},
			replay: function() {
				n.utilsFB.logByLevel("ev_replay_level"),
				this.startNewGame(this.currentLevelIndex)
			},
			replayInGame: function() {
				this.isWinPending || this.isLose || this.replay()
			},
			playNextLevelWithFriends: function() {
				var e = this;
				n.social.invite("but_next_level",
				function() {
					n.interAd.checkToShowReplayAd(),
					e.startNewGame(e.currentLevelIndex + 1)
				})
			},
			playNextLevel: function() {
				n.interAd.checkToShowReplayAd(),
				this.startNewGame(this.currentLevelIndex + 1)
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	game_language: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "f94208g8gdGRaPVQYcDDt7+", "game_language"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.language = void 0;
		var n = e("../all_modules"),
		o = n._,
		c = e("./language_message"),
		a = e("./lang-files/en_US");
		i.language = {
			initLanguageCallbackArr: [],
			languageChangedCallbackArr: [],
			isLatin: !0,
			currentLangCode: "en_US",
			currentLangFile: a,
			latinList: {
				en_US: !0
			},
			languageList: {
				en_US: {
					displayText: "ENGLISH"
				},
				vi_VN: {
					displayText: "TI\u1ebeNG VI\u1ec6T"
				},
				de_DE: {
					displayText: "-"
				},
				es_ES: {
					displayText: "-"
				},
				id_ID: {
					displayText: "INDONESIAN"
				},
				pt_PT: {
					displayText: "-"
				}
			},
			correctCode: function(e) {
				return {
					pt_BR: "pt_PT",
					es_LA: "es_ES",
					es_MX: "es_ES",
					fr_CA: "fr_FR"
				} [e] || e
			},
			setLabelFont: function(e) {
				e.getComponent(cc.Label).font = n.language.isLatin ? n.language.latinFont: null
			},
			init: function() {
				o.log(" game language initialized !!!!!! 12345 "),
				n.language.latinFont = cc.find("Canvas").getComponent("canvas_init").defaultFont,
				n.login.addLoginDataField("selectedLanguageCode"),
				n.login.addCallback(function() {
					var e;
					e = n.language.correctCode("en_US"),
					n.language.setLanguage(e),
					console.log("language.init() &gt;&gt; rawCode=en_US // langCode=" + e + " ")
				})
			},
			setLanguage: function(t) {
				var i = t;
				n.language.languageList[i] || (i = n.language.currentLangCode);
				var o = n.language.currentLangCode != i;
				o &amp;&amp; (n.data.saveData({
					selectedLanguageCode: i
				}), n.language.currentLangCode = i, n.language.currentLangFile = e(i), n.language.isLatin = n.language.latinList[i]),
				n.language.translateAllGame(i),
				o &amp;&amp; n.language.languageChangedCallbackArr.map(function(e) {
					return e(n.language.currentLangCode)
				}),
				n.language.isInitialized || n.language.initLanguageCallbackArr.map(function(e) {
					return e(n.language.currentLangCode)
				}),
				n.language.isInitialized = !0
			},
			setLabelDataAndRender: function(e, t) {
				var i = e.getComponent("language_comp");
				i &amp;&amp; i.translate(t)
			},
			addInitLanguageCallback: function(e) {
				if (!n.language.isInitialized) return n.language.initLanguageCallbackArr.push(e);
				e(n.language.currentLangCode)
			},
			addLanguageChangedCallback: function(e) {
				n.language.languageChangedCallbackArr.push(e)
			},
			generateCommonContents: function() {
				var e = n.language.currentLangFile,
				t = e.commonContentList;
				for (var i in e.labelList) {
					var o = e.labelList[i];
					o.rootContentId &amp;&amp; (t[o.rootContentId] = o.transGuide)
				}
			},
			translateAllGame: function() {
				n.language.generateCommonContents(),
				cc.find("Canvas").getComponentsInChildren("language_comp").map(function(e) {
					try {
						e.translate()
					} catch(t) {}
				}),
				cc.find("Canvas").getComponentsInChildren("language_label_group_comp").map(function(e) {
					try {
						e.translate()
					} catch(t) {}
				})
			},
			generateMsgTextObject: function(e) {
				return c.generateMsgTextObject(e)
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules",
		"./lang-files/en_US": "en_US",
		"./language_message": "language_message"
	}],
	game: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "944aecbqGdHyK1KB6hB4I63", "game"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.game = void 0;
		var n = e("../all_modules");
		n._,
		i.game = {
			isNewItemRotated: !1,
			currentItemNode: null,
			stepCount: 0,
			lastkeyCellPositionNumber: 0,
			init: function() {
				var e = cc.director.getPhysicsManager();
				e.enabled = !0,
				e.enabledAccumulator = !0,
				e.gravity = cc.v2(0, -9.8)
			},
			use1life: function() {
				n.user.lifeCount &amp;&amp; (n.user.lifeCount--, n.data.saveData({
					lifeCount: n.user.lifeCount
				}), n.ui.updateLifeCount(), n.iapUnlimitedLives.checkPointUpdate())
			},
			addGold: function(e) {
				n.user.gold += e,
				n.ui.updateGold(),
				n.data.saveData({
					gold: n.user.gold
				})
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	gold_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "fbb1aQ2XxtGpKdVfEU+/wsI", "gold_comp");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var a = e("../../all_modules"),
		l = (a._, cc._decorator),
		r = l.ccclass,
		s = (l.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			return o(t, e),
			t.prototype.onBeginContact = function(e, t, i) {
				var n = a.elementUtils.colliderNode2RootElement,
				o = this.node,
				c = i.node,
				l = n(o);
				n(c),
				!l || l.isPlayingSound || o.getComponent(cc.RigidBody).linearVelocity.mag() &lt; 80 &amp;&amp; c.getComponent(cc.RigidBody).linearVelocity.mag() &lt; 80 || (l.isPlayingSound = !0, a.audio.playSound("coin", 1), setTimeout(function() {
					l.isPlayingSound = !1
				},
				2e3))
			},
			c([r], t)
		} (cc.Component));
		i.
	default = s,
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	iap_no_ads: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "13b6e8HlxROVqG0E+Qnw0Kf", "iap_no_ads"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.iapNoAds = void 0;
		var n = e("../all_modules");
		n._,
		i.iapNoAds = {
			isPaid: !1,
			init: function() {
				var e = this;
				this.bindButtonHandlers(),
				n.login.addLoginDataField("isPaidAdsBlock"),
				n.iap.addInitCallback(function() {
					n.iap.isEnabled &amp;&amp; n.login.addCallback(function(t) {
						e.isPaid = t.isPaidAdsBlock,
						e.updateUI()
					})
				})
			},
			updateUI: function() {
				cc.find("Canvas/play_area/btn_iap_no_ads").active = !this.isPaid;
				var e = n.iap.productList.adsblock; ! this.isPaid &amp;&amp; e &amp;&amp; (n.utils.setLabelText(cc.find("Canvas/play_area/btn_iap_no_ads/price"), e.price), n.utils.setLabelText(cc.find("Canvas/layer_iap_no_ads/btn_show_purchase/price"), e.price), n.utils.setLabelText(cc.find("Canvas/layer_more_lives/btn_show_purchase/price"), e.price), n.utils.setLabelText(cc.find("Canvas/layer_iap_no_ads/panel01/label_intro"), "Block all Ads in game forever\nwith just " + e.price))
			},
			bindButtonHandlers: function() {
				var e = this;
				n.utils.addButtonComp(cc.find("Canvas/layer_iap_no_ads/exitButton"),
				function() {
					n.ui.hideLayer("layer_iap_no_ads")
				}),
				n.utils.addButtonComp(cc.find("Canvas/play_area/btn_iap_no_ads"),
				function() {
					e.show()
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_iap_no_ads/btn_show_purchase"),
				function() {
					e.purchase()
				})
			},
			show: function() { ! this.isPaid &amp;&amp; n.iap.isEnabled &amp;&amp; n.ui.showLayer("layer_iap_no_ads")
			},
			purchase: function() {
				var e = this;
				n.iap.purchase("adsblock",
				function() {
					console.log(" IAP ADSBLOCK PURCHASED !!!! "),
					e.isPaid = !0,
					e.updateUI(),
					n.ui.hideLayer("layer_iap_no_ads"),
					n.utils.setTimeout(function() {
						return n.ui.showLayer("layer_congrat_purchase_no_ads")
					},
					200),
					n.data.saveData({
						isPaidAdsBlock: "1"
					})
				})
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	iap_unlimited_lives: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "dd5c9M9fWtB2J3z83HUy1l/", "iap_unlimited_lives"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.iapUnlimitedLives = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.iapUnlimitedLives = {
			isPaid: !1,
			isPayingFromGameOver: !1,
			remainingTime: 0,
			lastCountDownStartTime: 0,
			init: function() {
				var e = this;
				this.bindButtonHandlers(),
				n.login.addLoginDataField("isPaidUnlimitedLives"),
				n.login.addLoginDataField("lastCountDownStartTime"),
				n.iap.addInitCallback(function() {
					n.login.addCallback(function(t) {
						e.isPaid = t.isPaidUnlimitedLives,
						e.lastCountDownStartTime = t.lastCountDownStartTime || 0,
						n.user.addInitCallback(function() {
							e.updateUI(),
							e.updateLifeCountFromTimePassed()
						})
					})
				})
			},
			updateLifeCountFromTimePassed: function() {
				if (this.lastCountDownStartTime) {
					var e = (o.time() - this.lastCountDownStartTime) / 1e3,
					t = o.floor(e / n.configs.moreLifeWaitTime);
					this.addMoreLives(t),
					this.remainingTime = n.configs.moreLifeWaitTime - e % n.configs.moreLifeWaitTime
				}
				this.checkPointUpdate()
			},
			isFullLives: function() {
				return n.user.lifeCount &gt;= n.configs.maxLifeCount
			},
			updateUI: function() {
				cc.find("Canvas/layer_unlimited_lives/panel02").active = n.iap.isEnabled,
				cc.find("Canvas/layer_unlimited_lives/btn_show_purchase").active = n.iap.isEnabled,
				cc.find("Canvas/layer_more_lives/btn_show_purchase").active = n.iap.isEnabled,
				cc.find("Canvas/play_area/life_count/plusIcon").active = !this.isPaid &amp;&amp; !this.isFullLives(),
				cc.find("Canvas/play_area/life_count/label").active = !this.isPaid,
				cc.find("Canvas/play_area/life_count/infinityIcon").active = this.isPaid;
				var e = n.iap.productList.unlimited_lives; ! this.isPaid &amp;&amp; e &amp;&amp; (n.utils.setLabelText(cc.find("Canvas/layer_unlimited_lives/btn_show_purchase/price"), e.price), n.utils.setLabelText(cc.find("Canvas/layer_unlimited_lives/panel02/label_intro"), "Get infinity lives with\njust " + e.price), n.utils.setLabelText(cc.find("Canvas/layer_unlimited_lives/btn_gold_buy_life/gold_price"), n.utils.localizeNumber(n.configs.lifePriceInGold) + "x"), n.utils.setLabelText(cc.find("Canvas/layer_unlimited_lives/btn_watch/label_life_added"), "+" + n.configs.moreLifeAfterVideo))
			},
			bindButtonHandlers: function() {
				var e = this;
				n.utils.addButtonComp(cc.find("Canvas/layer_unlimited_lives/exitButton"),
				function() {
					n.ui.hideLayer("layer_unlimited_lives")
				}),
				n.utils.addButtonComp(cc.find("Canvas/play_area/life_count"),
				function() {
					e.isPayingFromGameOver = !1,
					e.show()
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_unlimited_lives/btn_show_purchase"),
				function() {
					e.purchase()
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_more_lives/btn_show_purchase"),
				function() {
					e.isPayingFromGameOver = !0,
					e.show()
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_unlimited_lives/btn_watch"),
				function() {
					n.video.showVideo(function() {
						e.addMoreLives(n.configs.moreLifeAfterVideo)
					})
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_unlimited_lives/btn_gold_buy_life"),
				function() {
					n.user.gold &lt; n.configs.lifePriceInGold || (n.user.gold -= n.configs.lifePriceInGold, n.data.saveData({
						gold: n.user.gold
					}), n.ui.updateGold(), e.addMoreLives(1))
				})
			},
			addMoreLives: function(e) {
				if (e) {
					n.user.lifeCount = o.min(n.user.lifeCount + e, n.configs.maxLifeCount),
					n.data.saveData({
						lifeCount: n.user.lifeCount
					}),
					n.ui.updateLifeCount(),
					this.checkPointUpdate();
					var t = cc.find("Canvas/layer_unlimited_lives").active ? "layer_add_lives": "layer_out_of_lives";
					n.utilsFB.log("ev_buy_live_gold", 1, {
						layoutName: t
					}),
					n.ui.hideLayer("layer_unlimited_lives")
				}
			},
			show: function() {
				this.isPaid || this.isFullLives() || n.ui.showLayer("layer_unlimited_lives")
			},
			purchase: function() {
				var e = this;
				n.iap.purchase("unlimited_lives",
				function() {
					console.log(" IAP UNLIMITED LIVES PURCHASED !!!! "),
					e.isPaid = !0,
					e.updateUI(),
					n.data.saveData({
						isPaidUnlimitedLives: "1"
					}),
					n.ui.hideLayer("layer_unlimited_lives"),
					n.utils.setTimeout(function() {
						return n.ui.showLayer("layer_congrat_purchase_infinity_lives")
					},
					200),
					e.isPayingFromGameOver &amp;&amp; (e.isPayingFromGameOver = !1, n.ui.hideLayer("layer_more_lives"), n.ui.showLayer("layer_game_over"))
				})
			},
			checkPointUpdate: function() {
				var e = this;
				n.iapUnlimitedLives.updateUI(),
				cc.find("Canvas/layer_more_lives").active = 0 == n.user.lifeCount,
				cc.find("Canvas/play_area/life_count/socket02").active = !this.isFullLives();
				var t = cc.find("Canvas/play_area/life_count/socket02/remaining_time");
				if (this.isFullLives()) this.remainingTime = 0,
				t.countDownTimerVar &amp;&amp; (clearInterval(t.countDownTimerVar), t.countDownTimerVar = 0);
				else if (!t.countDownTimerVar) {
					var i = this.remainingTime || n.configs.moreLifeWaitTime;
					this.remainingTime || n.data.saveData({
						lastCountDownStartTime: o.time()
					});
					var c = o.time() + 1e3 * i;
					n.utils.setLabelCountDownTimer(t, c,
					function() {
						e.addMoreLives(1),
						0 == n.user.lifeCount &amp;&amp; n.moreLives.onLivesAdded(),
						e.checkPointUpdate(),
						e.remainingTime = 0,
						n.data.saveData({
							lastCountDownStartTime: 0
						})
					}),
					n.utils.setLabelCountDownTimer(cc.find("Canvas/layer_more_lives/socket01/label_remaining_time"), c)
				}
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	iap: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "a9e72Kb9xFFh4RxehtXYUAz", "iap"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.iap = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.iap = {
			isEnabled: !1,
			isInitialized: !1,
			initCallbackArr: [],
			productList: {
				adsblock: {
					price: "$1.99"
				},
				unlimited_lives: {
					price: "$4.99"
				}
			},
			init: function() {
				var e = this;
				n.utils.waitToRun(function() {
					var t = fbSupportedAPIs.includes("payments.getCatalogAsync") &amp;&amp; fbSupportedAPIs.includes("payments.purchaseAsync");
					if (o.log("isSupported = " + t + " /// fbSupportedAPIs = " + fbSupportedAPIs), !window.FBInstant || !t || n.configs.isIAPTemporarilyOff) return e.isEnabled = !1,
					e.isInitialized = !0,
					o.log("IAPPPP &gt;&gt; isSupported = " + t + " // isEnabled=" + e.isEnabled + " "),
					e.initCallbackArr.map(function(e) {
						return e()
					});
					FBInstant.payments.onReady(function() {
						FBInstant.payments.getCatalogAsync().then(function(t) {
							o.log("IAPPPP &gt;&gt; catalog = " + t);
							for (var i = 0; i &lt; t.length; i++) e.productList[t[i].productID] = t[i];
							e.isEnabled = !0,
							e.isInitialized = !0,
							e.initCallbackArr.map(function(e) {
								return e()
							})
						})
					})
				},
				"fbSupportedAPIs")
			},
			addInitCallback: function(e) {
				if (this.isInitialized) return e();
				this.initCallbackArr.push(e)
			},
			purchase: function(e, t, i) {
				if (console.log("showPurchase &gt;&gt;&gt; IAP NO ADS"), !window.FBInstant) return t &amp;&amp; t();
				FBInstant.payments.purchaseAsync({
					productID: e
				}).then(function(i) {
					n.utilsFB.log("ev_iap_buy_" + e, 1, {
						productID: e
					}),
					t &amp;&amp; t(),
					FBInstant.payments.consumePurchaseAsync(i.purchaseToken).then(function() {
						console.log("IAP consumePurchaseAsync &gt;&gt; purchased item consumed !")
					}).
					catch(function(e) {
						console.log("IAP consumePurchaseAsync &gt;&gt; error", e)
					})
				}).
				catch(function(t) {
					n.utilsFB.log("ev_iap_buy_" + e + "_failed", 1, {
						err: t ? t.message: ""
					}),
					console.log(t),
					i &amp;&amp; i()
				})
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	instant_utils: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "dea51EdomZLOI9OjPxOERYn", "instant_utils"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i._ = void 0,
		i._ = {
			NO_CONSOLE_LOG: !0,
			isANDROID: cc.sys.os == cc.sys.OS_ANDROID,
			isIOS: cc.sys.os == cc.sys.OS_IOS,
			max: Math.max,
			min: Math.min,
			round: Math.round,
			floor: Math.floor,
			ceil: Math.ceil,
			sign: Math.sign,
			abs: Math.abs,
			random: Math.random,
			sqrt: Math.sqrt,
			atan2: Math.atan2,
			sin: Math.sin,
			cos: Math.cos,
			PI: Math.PI,
			removeArrItem: function(e, t) {
				var i = e.indexOf(t);
				if ( - 1 != i) return e.splice(i, 1),
				!0
			},
			time: function() {
				return (new Date).getTime()
			},
			isString: function(e) {
				return "string" == typeof e
			},
			isFunction: function(e) {
				return e &amp;&amp; "[object Function]" === {}.toString.call(e)
			},
			log: function() {
				for (var e = [], t = 0; t &lt; arguments.length; t++) e[t] = arguments[t];
				if (!i._.NO_CONSOLE_LOG) try {
					console.log.apply(console, e)
				} catch(n) {}
			}
		},
		cc._RF.pop()
	},
	{}],
	inter_ad: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "7d8c7BBvvtMMqzIQkwP6qt1", "inter_ad"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.interAd = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.interAd = {
			isLoading: !1,
			init: function() {
				this.preloadInterAds()
			},
			interAdObj: null,
			preloadInterAds: function() {
				var e = this;
				window.FBInstant &amp;&amp; (this.isLoading || (o.log("interAd.preloadInterAds ...  "), this.interAdObj = null, this.isLoading = !0, FBInstant.getInterstitialAdAsync(n.configs.interAdId).then(function(t) {
					t.loadAsync().then(function() {
						o.log("interAd.preloadInterAds successfully "),
						e.interAdObj = t,
						e.isLoading = !1
					}).
					catch(function(t) {
						console.warn(t),
						e.isLoading = !1
					})
				}).
				catch(function(t) {
					console.warn(t),
					e.isLoading = !1
				})))
			},
			showInterAds: function(e, t, i) {
                window.playInterAd();
                t &amp;&amp; t();

				// var c = this;
				// if (void 0 === i &amp;&amp; (i = 1), o.log(" showInterAds 1111 "), !window.FBInstant) return t &amp;&amp; t();
				// n.utils.waitToRun(function() {
				// 	o.log(" showInterAds 2222 "),
				// 	c.interAdObj.showAsync().then(function() {
				// 		o.log("interAd.showInterAds success "),
				// 		n.interAd.log(e, 1),
				// 		t &amp;&amp; t(),
				// 		c.preloadInterAds()
				// 	}).
				// 	catch(function(i) {
				// 		o.log("interAd.showInterAds fail ", i),
				// 		n.interAd.log(e, 0, i.code),
				// 		t &amp;&amp; t(),
				// 		"RATE_LIMITED" != i.code &amp;&amp; c.preloadInterAds()
				// 	})
				// },
				// "interAdObj", this, .1, i,
				// function() {
				// 	o.log("interAd.showInterAds fail - LOAD_FAIL "),
				// 	c.preloadInterAds(),
				// 	t &amp;&amp; t()
				// })
			},
			log: function(e, t, i) {
				void 0 === i &amp;&amp; (i = ""),
				n.utilsFB.log("ev_inter_ad", 1, {
					position: e,
					watched_success: t,
					err_code: i
				}),
				t &amp;&amp; (n.utilsFB.log("Ads-Total-Inter"), n.utilsFB.log("Ads-Total"))
			},
			replayCount2ShowAd: 1,
			checkToShowReplayAd: function() {
				this.replayCount2ShowAd++,
				this.replayCount2ShowAd % n.configs.showInterAdAfterEveryReplayTime == 1 &amp;&amp; 1 != n.gameFlow.currentLevelIndex &amp;&amp; this.showInterAds("replay")
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	language_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "b45c9xtSuBGzbhD0Q7lYQzE", "language_comp"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var n = e("../all_modules"),
		o = n._;
		cc.Class({
			extends: cc.Component,
			properties: {
				contentId: ""
			},
			onLoad: function() {},
			sanitizeContentid: function(e) {
				return e.toLowerCase().replace(/(^\s+)|(\s+$)/g, "")
			},
			translate: function(e) {
				e &amp;&amp; (this.data = e);
				var t = n.language.currentLangFile,
				i = t.specialCharacter,
				c = this.data,
				a = this.node,
				l = this.sanitizeContentid(this.contentId),
				r = n.utils.getNodePath(a);
				n.language.setLabelFont(this.node);
				var s = t.labelList[r];
				s &amp;&amp; s.rootContentId ? s = s.transGuide: l &amp;&amp; (s = t.commonContentList[l]),
				"lb_tab_friends" == l &amp;&amp; o.log("contentId=" + l + " // transGuide", s),
				s &amp;&amp; (o.isString(s) ? n.utils.setLabelText(a, s.replace(i, c)) : o.isFunction(s) &amp;&amp; n.utils.setLabelText(a, s(c)))
			}
		}),
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	language_label_group_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "3e120DNSjBKp6EhN+dy3dab", "language_label_group_comp"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var n = e("../all_modules");
		n._,
		cc.Class({
			extends: cc.Component,
			properties: {},
			onLoad: function() {},
			translate: function() {
				var e = n.language.currentLangCode;
				this.node.children.map(function(t) {
					return t.active = t.name == e
				})
			}
		}),
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	language_message: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "248e0E2g8RFGpfYESoaizMF", "language_message"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.generateMsgTextObject = void 0,
		i.generateMsgTextObject = function(e) {
			return {
			default:
				e,
				localizations: {
					en_US: e,
					ca_ES: e,
					cs_CZ: e,
					cx_PH: e,
					cy_GB: e,
					da_DK: e,
					de_DE: e,
					eu_ES: e,
					en_UD: e,
					es_LA: e,
					es_ES: e,
					es_MX: e,
					gn_PY: e,
					fi_FI: e,
					fr_FR: e,
					gl_ES: e,
					hu_HU: e,
					it_IT: e,
					ja_JP: e,
					ko_KR: e,
					nb_NO: e,
					nn_NO: e,
					nl_NL: e,
					fy_NL: e,
					pl_PL: e,
					pt_BR: e,
					pt_PT: e,
					ro_RO: e,
					ru_RU: e,
					sk_SK: e,
					sl_SI: e,
					sv_SE: e,
					th_TH: e,
					tr_TR: e,
					ku_TR: e,
					zh_CN: e,
					zh_HK: e,
					zh_TW: e,
					af_ZA: e,
					sq_AL: e,
					hy_AM: e,
					az_AZ: e,
					be_BY: e,
					bn_IN: e,
					bs_BA: e,
					bg_BG: e,
					hr_HR: e,
					nl_BE: e,
					en_GB: e,
					et_EE: e,
					fo_FO: e,
					fr_CA: e,
					ka_GE: e,
					el_GR: e,
					gu_IN: e,
					hi_IN: e,
					is_IS: e,
					id_ID: e,
					ga_IE: e,
					jv_ID: e,
					kn_IN: e,
					kk_KZ: e,
					lv_LV: e,
					lt_LT: e,
					mk_MK: e,
					mg_MG: e,
					ms_MY: e,
					mt_MT: e,
					mr_IN: e,
					mn_MN: e,
					ne_NP: e,
					pa_IN: e,
					sr_RS: e,
					so_SO: e,
					sw_KE: e,
					tl_PH: e,
					ta_IN: e,
					te_IN: e,
					ml_IN: e,
					uk_UA: e,
					uz_UZ: e,
					vi_VN: e,
					km_KH: e,
					tg_TJ: e,
					ar_AR: e,
					he_IL: e,
					ur_PK: e,
					fa_IR: e,
					ps_AF: e,
					my_MM: e,
					qz_MM: e,
					or_IN: e,
					si_LK: e,
					rw_RW: e,
					cb_IQ: e,
					ha_NG: e,
					ja_KS: e,
					br_FR: e,
					tz_MA: e,
					co_FR: e,
					as_IN: e,
					ff_NG: e,
					sc_IT: e,
					sz_PL: e
				}
			}
		},
		cc._RF.pop()
	},
	{}],
	lava_collision_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "5ca33NjOCxCd6j4uZQxZRmm", "lava_collision_comp");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var a = e("../../all_modules"),
		l = a._,
		r = cc._decorator,
		s = r.ccclass,
		p = (r.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			var i;
			return o(t, e),
			i = t,
			t.prototype.onBeginContact = function(e, t, i) {
				var n = i.node,
				o = a.elementUtils.colliderNode2RootElement(n);
				if (o) if ("gold" != n.group || this.node.isStone) {
					if ("elem_water" != o.name) return;
					if (this.node.isStone) return l.random() &gt; .7 &amp;&amp; (e.disabled = !0),
					void setTimeout(function() {
						return n.active = !1
					},
					1500);
					if (l.random() &gt; .5 &amp;&amp; !n.isThroughFirstStone) return n.isThroughFirstStone = !0,
					e.disabled = !0,
					void setTimeout(function() {
						return n.active = !1
					},
					2e3);
					n.active = !1,
					this.turnToStone()
				} else if (o.lostCount = o.lostCount || 0, o.lostCount++, a.audio.playSound("turn into stone"), a.fx.fxSmokeAt(n), n.removeFromParent(), o.lostCount / o.children.length &gt; .2) {
					var c = cc.find("Canvas/play_area/map/elem_char_main");
					c.isDead || c.setDie(null, "lava")
				}
			},
			t.prototype.turnToStone = function() {
				if (this.node &amp;&amp; this.node.activeInHierarchy &amp;&amp; this.node.parent) {
					var e = this.node.getChildByName("lava_piece_visual");
					e.getComponent(cc.Sprite).spriteFrame = cc.find("Canvas").getComponent("canvas_init").stoneSprite,
					e.width = e.height = 30,
					this.node.isStone = !0,
					this.node.getChildByName("fx_lava_spark").active = !1,
					a.fx.fxSmokeAt(this.node);
					var t = a.elementUtils.colliderNode2RootElement(this.node);
					if (!t.isConvertingAllChildrenToStone) {
						var n = 0;
						t.children.map(function(e) {
							return n += e.isStone ? 1 : 0
						}),
						n / t.children.length &lt; .5 || (a.audio.stopSound("lava"), a.audio.playSound("turn into stone"), t.isConvertingAllChildrenToStone = !0, t.children.map(function(e) {
							return e.isStone || e.getComponent(i).turnToStone()
						}))
					}
				}
			},
			i = c([s], t)
		} (cc.Component));
		i.
	default = p,
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	layout_language_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "f75e6ryLNFAKKhm3z+J4ufV", "layout_language_comp"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var n = e("../all_modules"),
		o = n._,
		c = ["Canvas/shares/sharepicture/label_score_intro", "Canvas/messages/ScoreMessenger/lb_score", "Canvas/layer_pause/header_bg/label_header", "Canvas/layer_pause/btn_continue/label_continue", "Canvas/layer_pause/btn_restart/label_restart", "Canvas/layer_video_continue/header_bg/label_header", "Canvas/layer_video_continue/btn_save_me/label_continue", "Canvas/layer_video_continue/btn_cancel/label_restart", "Canvas/layer_video_continue/label_noti", "Canvas/layer_challenge_friend/header/decor/label_great", "Canvas/layer_challenge_friend/content_bg/label_score", "Canvas/layer_challenge_friend/content_bg/players/label_vs", "Canvas/layer_challenge_friend/content_bg/btn_another_friend/label_restart", "Canvas/layer_challenge_friend/content_bg/btn_play/label_play", "Canvas/layer_challenge_friend/btn_cancel/label_cancel", "Canvas/layer_game_over/content_bg/label_score_intro", "Canvas/layer_game_over/header_bg/label_header", "Canvas/layer_game_over/btn_replay/label_restart", "Canvas/layer_alert/content_bg/label_message", "Canvas/layer_alert/header_bg/label_header", "Canvas/layer_alert/btn_ok/label_restart", "Canvas/layer_loading/label_loading"];
		cc.Class({
			extends: cc.Component,
			editor: {
				executeInEditMode: !0
			},
			onLoad: function() {
				var e = this;
				o.log("=============== all labels for " + n.utils.getNodePath(this.node) + " ");
				var t = this.node.getComponentsInChildren(cc.Label);
				t.map(function(e, t) {
					setTimeout(function() {
						var t = e.node,
						i = n.utils.getNodePath(t);
						if (c.includes(i) &amp;&amp; !t.getComponent("language_comp")) {
							t.addComponent("language_comp");
							var a = cc.find("Canvas").getComponentsInChildren("language_comp").length + 0;
							e.string = a + "#" + e.string,
							o.log("[" + a + "] = " + i)
						}
					},
					100 * t)
				}),
				setTimeout(function() {
					o.log("=============== Done ===================== "),
					e.node.removeComponent("layout_language_comp")
				},
				150 * t.length)
			}
		}),
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	level_config: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "28db086dq5HSJXc8aXzV1kU", "level_config"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.levelConfigList = i.levelReapeatStartIndex = void 0,
		e("./all_modules")._,
		i.levelReapeatStartIndex = 20,
		i.levelConfigList = {
			1 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -5.76),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					hasWeapon: !0,
					position: cc.v2(144, -414.08),
					type: "characterMain"
				},
				{
					partCount: 8,
					angle: 0,
					position: cc.v2( - 176.64, -7.68),
					type: "gold"
				},
				{
					width: 400,
					angle: 20,
					position: cc.v2( - 238.23, -111.27),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			2 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(163.2, -412.16),
					type: "characterMain"
				},
				{
					partCount: 9,
					angle: 0,
					position: cc.v2( - 188.16, -38.4),
					type: "gold"
				},
				{
					width: 390,
					angle: 20,
					position: cc.v2( - 257.43, -126.63),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 90,
					position: cc.v2(68.97, -428.07),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			3 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(261.92, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 121.82, -153.75),
					type: "wallHorz"
				},
				{
					height: 180,
					angle: 0,
					position: cc.v2(17.28, -80.64),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(147.84, -412.16),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(7.68, 201.6),
					type: "gold"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 141.94, -83.41),
					type: "lava"
				},
				{
					width: 410,
					angle: 340,
					position: cc.v2( - 257.43, 178.65),
					type: "singleLatch"
				},
				{
					width: 410,
					angle: 200,
					position: cc.v2(264.81, 180.57),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			4 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 250,
					angle: 0,
					position: cc.v2( - 121.82, -222.87),
					type: "wallHorz"
				},
				{
					height: 180,
					angle: 0,
					position: cc.v2( - 7.68, -124.8),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(149.76, -416),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 1.92, 207.36),
					type: "gold"
				},
				{
					partCount: 12,
					angle: 0,
					position: cc.v2( - 188.02, -150.61),
					type: "lava"
				},
				{
					width: 360,
					angle: 340,
					position: cc.v2( - 238.23, 236.25),
					type: "singleLatch"
				},
				{
					width: 360,
					angle: 336,
					position: cc.v2( - 236.31, 103.77),
					type: "singleLatch"
				},
				{
					width: 360,
					angle: 203,
					position: cc.v2(236.01, 99.93),
					type: "singleLatch"
				},
				{
					width: 360,
					angle: 202,
					position: cc.v2(237.93, 243.93),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			5 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 200,
					angle: 0,
					position: cc.v2( - 44.16, -44.16),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(213.6, 150.4),
					type: "characterMain"
				},
				{
					width: 180,
					angle: 179,
					position: cc.v2(237.93, 142.17),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 240.15, -143.91),
					type: "singleLatch"
				},
				{
					width: 360,
					angle: 90,
					position: cc.v2( - 34.71, -405.03),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 159.36, -407.04),
					type: "characterPrincess"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 170.74, -94.93),
					type: "lava"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			6 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 180,
					angle: 0,
					position: cc.v2(126.72, -328.32),
					type: "wallVert"
				},
				{
					height: 180,
					angle: 0,
					position: cc.v2( - 23.04, -328.32),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 163.2, -414.08),
					type: "characterMain"
				},
				{
					partCount: 12,
					angle: 0,
					position: cc.v2( - 15.36, 140.16),
					type: "gold"
				},
				{
					partCount: 7,
					angle: 0,
					position: cc.v2(38.54, -363.73),
					type: "lava"
				},
				{
					partCount: 7,
					angle: 0,
					position: cc.v2(176.78, -361.81),
					type: "lava"
				},
				{
					width: 380,
					angle: 336,
					position: cc.v2( - 249.75, 190.17),
					type: "singleLatch"
				},
				{
					width: 390,
					angle: 203,
					position: cc.v2(243.69, 188.25),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			7 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 300,
					angle: 0,
					position: cc.v2( - 40.32, 34.56),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(190.08, -316.16),
					type: "characterMain"
				},
				{
					width: 200,
					height: 80,
					angle: 0,
					position: cc.v2(148.88, -372.56),
					type: "platformBox"
				},
				{
					partCount: 60,
					angle: 0,
					position: cc.v2( - 155.52, -357.12),
					type: "water"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 218.88, 270.72),
					type: "gold"
				},
				{
					partCount: 12,
					angle: 0,
					position: cc.v2( - 170.74, -33.49),
					type: "lava"
				},
				{
					width: 450,
					angle: 18,
					position: cc.v2( - 268.95, 190.17),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 259.35, -95.91),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			8 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(157.63, -289.24),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 153.84, 207.57),
					type: "gold"
				},
				{
					partCount: 7,
					angle: 0,
					position: cc.v2(57.98, 181.62),
					type: "lava"
				},
				{
					width: 320,
					height: 120,
					angle: 0,
					position: cc.v2(89.26, -354.02),
					type: "platformBox"
				},
				{
					partCount: 7,
					angle: 0,
					position: cc.v2( - 182.46, -370.1),
					type: "lava"
				},
				{
					width: 480,
					angle: 206,
					position: cc.v2(236.35, 182.86),
					type: "singleLatch"
				},
				{
					width: 280,
					angle: 270,
					position: cc.v2( - 57.8, 238.64),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 320,
					position: cc.v2( - 236.6, 173.21),
					type: "singleLatch"
				},
				{
					width: 480,
					angle: 206,
					position: cc.v2(255.55, -3.63),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			9 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -3.84),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 170,
					angle: 0,
					position: cc.v2(32.64, 309.12),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(97.92, 244.48),
					type: "characterMain"
				},
				{
					partCount: 80,
					angle: 0,
					position: cc.v2( - 115.2, 295.68),
					type: "water"
				},
				{
					partCount: 7,
					angle: 0,
					position: cc.v2(7.82, 50.99),
					type: "lava"
				},
				{
					width: 200,
					height: 80,
					angle: 0,
					position: cc.v2(148.88, -380.24),
					type: "platformBox"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(213.12, -334.08),
					type: "characterPrincess"
				},
				{
					partCount: 7,
					angle: 0,
					position: cc.v2( - 122.74, -354.13),
					type: "lava"
				},
				{
					width: 400,
					angle: 0,
					position: cc.v2( - 261.27, 232.41),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 180,
					position: cc.v2(259.05, 232.41),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 343,
					position: cc.v2( - 259.35, 26.97),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 195,
					position: cc.v2(262.89, 25.05),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			10 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 310,
					angle: 0,
					position: cc.v2(89.74, -13.59),
					type: "wallHorz"
				},
				{
					width: 300,
					angle: 351,
					position: cc.v2(72.44, 11.4),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(165.32, -340.47),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(257.59, -13.46),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 76.89, -11.53),
					type: "decorWallJoint"
				},
				{
					latchWidth: 220,
					moveRange: 400,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(215.22, -12.6),
					type: "doubleLatch"
				},
				{
					angle: 0,
					position: cc.v2(215.3, -13.46),
					type: "decorWallJoint"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2(111.5, 132.64),
					type: "gold"
				},
				{
					angle: 0,
					position: cc.v2( - 76.89, 30.76),
					type: "decorWallJoint"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			11 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 350,
					angle: 0,
					position: cc.v2(87.72, -142.2),
					type: "wallHorz"
				},
				{
					height: 200,
					angle: 0,
					position: cc.v2(61.34, 288.37),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 23.25, 248.98),
					type: "characterMain"
				},
				{
					partCount: 8,
					angle: 0,
					position: cc.v2(21.29, -75.79),
					type: "lava"
				},
				{
					partCount: 25,
					angle: 0,
					position: cc.v2( - 190.31, -357.55),
					type: "water"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(186.47, -123.3),
					type: "characterPrincess"
				},
				{
					angle: 0,
					position: cc.v2( - 84.58, -140.15),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(249.71, -142.07),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(61.34, 399.84),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(59.42, 201.85),
					type: "decorWallJoint"
				},
				{
					latchWidth: 180,
					moveRange: 235,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(99.86, -137.37),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 240.27, -137.94),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 328,
					position: cc.v2( - 215.48, 317.32),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			12 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 300,
					angle: 0,
					position: cc.v2(1.92, 242.21),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 176.85, -402.66),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(1.92, 101.88),
					type: "decorWallJoint"
				},
				{
					width: 360,
					angle: 0,
					position: cc.v2( - 261.56, 94.46),
					type: "singleLatch"
				},
				{
					width: 360,
					angle: 180,
					position: cc.v2(257.46, 94.46),
					type: "singleLatch"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2(119.18, 224.91),
					type: "gold"
				},
				{
					partCount: 40,
					angle: 0,
					position: cc.v2( - 132.64, 196.59),
					type: "poisonGas"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			13 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 155.52, -403.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(201.6, -406.4),
					type: "characterMain"
				},
				{
					partCount: 8,
					angle: 0,
					position: cc.v2( - 189.94, 93.23),
					type: "lava"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 197.76, -59.52),
					type: "water"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 184.32, 276.48),
					type: "gold"
				},
				{
					partCount: 30,
					angle: 0,
					position: cc.v2( - 161.28, -44.16),
					type: "water"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 253.59, 218.97),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 255.51, 32.73),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 251.67, -126.63),
					type: "singleLatch"
				},
				{
					width: 1100,
					angle: 270,
					position: cc.v2( - 34.71, 349.53),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			14 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 160,
					angle: 0,
					position: cc.v2(166.18, 74.73),
					type: "wallHorz"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2(96, 120.96),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2( - 97.92, 120.96),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2( - 92.16, -163.2),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2(97.92, -168.96),
					type: "wallVert"
				},
				{
					width: 180,
					angle: 0,
					position: cc.v2( - 165.98, -224.79),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(203.52, -400.64),
					type: "characterMain"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(172.94, 143.15),
					type: "lava"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 3.84, 299.52),
					type: "gold"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 189.94, -142.93),
					type: "lava"
				},
				{
					width: 500,
					angle: 341,
					position: cc.v2( - 242.07, 297.69),
					type: "singleLatch"
				},
				{
					width: 500,
					angle: 0,
					position: cc.v2( - 257.43, 63.45),
					type: "singleLatch"
				},
				{
					width: 500,
					angle: 203,
					position: cc.v2(230.25, 307.29),
					type: "singleLatch"
				},
				{
					width: 500,
					angle: 344,
					position: cc.v2( - 243.99, -19.11),
					type: "singleLatch"
				},
				{
					width: 500,
					angle: 190,
					position: cc.v2(260.97, -40.23),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2( - 101.76, 151.68),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 96, 76.8),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(92.16, 155.52),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(94.08, 78.72),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 92.16, -124.8),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 90.24, -222.72),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 259.2, -228.48),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(97.92, -132.48),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(99.84, -228.48),
					type: "decorWallJoint"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			15 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(258.08, -9.6),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2( - 40.32, -13.44),
					type: "wallVert"
				},
				{
					width: 240,
					angle: 0,
					position: cc.v2( - 148.7, 80.49),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(192, -109.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 172.8, -397.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 178.56, 102.4),
					type: "characterMain"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 151.76, -97.92),
					type: "characterPrincess"
				},
				{
					angle: 0,
					position: cc.v2(63.44, 130.56),
					type: "sword"
				},
				{
					angle: 0,
					position: cc.v2( - 49.92, 71.04),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 42.24, -109.44),
					type: "decorWallJoint"
				},
				{
					width: 270,
					angle: 0,
					position: cc.v2( - 255.51, -113.19),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 270,
					position: cc.v2( - 42.39, 303.45),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 180,
					position: cc.v2(249.45, 84.57),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 180,
					position: cc.v2(264.81, -117.03),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			16 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 258.08, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -1.92),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 209.28, -408.32),
					type: "characterMain"
				},
				{
					width: 300,
					angle: 225,
					position: cc.v2( - 92.31, 205.53),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 315,
					position: cc.v2(97.77, 199.77),
					type: "singleLatch"
				},
				{
					width: 380,
					angle: 215,
					position: cc.v2(226.41, 55.77),
					type: "singleLatch"
				},
				{
					width: 380,
					angle: 329,
					position: cc.v2( - 242.07, 44.25),
					type: "singleLatch"
				},
				{
					width: 430,
					angle: 90,
					position: cc.v2( - 2.07, -387.75),
					type: "singleLatch"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(2.06, 6.83),
					type: "lava"
				},
				{
					partCount: 30,
					angle: 0,
					position: cc.v2( - 215.04, 215.04),
					type: "water"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(182.4, 226.56),
					type: "gold"
				},
				{
					angle: 0,
					position: cc.v2( - 253.44, 401.28),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(259.2, 403.2),
					type: "decorWallJoint"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			17 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2( - 38.4, -3.84),
					type: "wallVert"
				},
				{
					height: 170,
					angle: 0,
					position: cc.v2( - 40.32, 305.28),
					type: "wallVert"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2(106.66, 214.89),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 150.84, -398.4),
					type: "characterEnemy"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 165, 269.92),
					type: "gold"
				},
				{
					angle: 0,
					position: cc.v2(74.08, -9.2),
					type: "bomb"
				},
				{
					angle: 0,
					turnDirection: "left",
					hasWeapon: !1,
					position: cc.v2(139.64, -404.16),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 40, 397),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(250, 397),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 250, 397),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 40, 217),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(250, 219),
					type: "decorWallJoint"
				},
				{
					width: 320,
					angle: 0,
					position: cc.v2( - 259.92, 211.92),
					type: "singleLatch"
				},
				{
					latchWidth: 110,
					moveRange: 300,
					angle: 270,
					latchAngle: 0,
					position: cc.v2(227, 210),
					type: "doubleLatch"
				},
				{
					latchWidth: 290,
					moveRange: 190,
					angle: 180,
					latchAngle: 0,
					position: cc.v2(259.84, -73.44),
					type: "doubleLatch"
				},
				{
					width: 490,
					angle: 90,
					position: cc.v2( - 36.63, -426.15),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			18 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 510,
					angle: 0,
					position: cc.v2(0, 150),
					type: "wallHorz"
				},
				{
					width: 340,
					angle: 0,
					position: cc.v2( - 80, -114),
					type: "wallHorz"
				},
				{
					height: 360,
					angle: 0,
					position: cc.v2(90, -280),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 160.12, -98),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 162.04, -411.84),
					type: "characterEnemy"
				},
				{
					partCount: 40,
					angle: 0,
					position: cc.v2( - 3.84, 5.44),
					type: "poisonGas"
				},
				{
					angle: 0,
					turnDirection: "left",
					hasWeapon: !1,
					position: cc.v2(184.28, -98),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 152.32, -175.36),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2(180, -380),
					type: "trapDropTrigger"
				},
				{
					width: 230,
					angle: 180,
					position: cc.v2(256, -110),
					type: "singleLatch"
				},
				{
					width: 380,
					angle: 270,
					position: cc.v2( - 90, 150),
					type: "singleLatch"
				},
				{
					width: 380,
					angle: 270,
					position: cc.v2(90, 150),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			19 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 500,
					angle: 0,
					position: cc.v2( - 26.16, 76.16),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 156.96, -152),
					type: "characterEnemy"
				},
				{
					width: 260,
					height: 70,
					angle: 0,
					position: cc.v2(115, -400),
					type: "platformBox"
				},
				{
					partCount: 40,
					angle: 0,
					position: cc.v2( - 170, -370),
					type: "water"
				},
				{
					partCount: 7,
					angle: 0,
					position: cc.v2( - 163.44, 98.88),
					type: "lava"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(170, -370),
					type: "characterMain"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 86.56, 208.48),
					type: "characterPrincess"
				},
				{
					width: 340,
					angle: 0,
					position: cc.v2( - 250.4, 194.24),
					type: "singleLatch"
				},
				{
					width: 340,
					angle: 0,
					position: cc.v2( - 252.32, 46.96),
					type: "singleLatch"
				},
				{
					width: 340,
					angle: 0,
					position: cc.v2( - 252.32, -170),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			20 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 170,
					angle: 0,
					position: cc.v2(0, 320),
					type: "wallVert"
				},
				{
					width: 260,
					angle: 0,
					position: cc.v2(125, 250),
					type: "wallHorz"
				},
				{
					width: 240,
					angle: 0,
					position: cc.v2(130, -180),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 155.04, -11.52),
					type: "characterEnemy"
				},
				{
					angle: 0,
					position: cc.v2(122.32, -126.96),
					type: "sword"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 165, 316),
					type: "gold"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(175.76, -406.48),
					type: "characterMain"
				},
				{
					width: 400,
					angle: 0,
					position: cc.v2( - 260, 240),
					type: "singleLatch"
				},
				{
					width: 770,
					angle: 0,
					position: cc.v2( - 260, -30),
					type: "singleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 290,
					angle: 90,
					isFlip: !0,
					latchAngle: 0,
					position: cc.v2(247.28, -201.92),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			21 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 270,
					angle: 0,
					position: cc.v2(0, 260),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 180, -100),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(190, -100),
					type: "characterSnake"
				},
				{
					angle: 0,
					position: cc.v2(135, 160),
					type: "chest"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 105, 160),
					type: "characterMain"
				},
				{
					width: 770,
					angle: 0,
					position: cc.v2( - 260, 130),
					type: "singleLatch"
				},
				{
					width: 770,
					angle: 0,
					position: cc.v2( - 260, -130),
					type: "singleLatch"
				},
				{
					width: 380,
					angle: 270,
					position: cc.v2(0, 140),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			22 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(256.16, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 201.6, -82.56),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 90.24, -341.76),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(161.28, -74.24),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 11.38, 302.51),
					type: "lava"
				},
				{
					width: 250,
					height: 50,
					angle: 0,
					position: cc.v2( - 121.84, -389.84),
					type: "platformBox"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(126.86, -363.73),
					type: "lava"
				},
				{
					angle: 0,
					position: cc.v2( - 249.6, 399.36),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(251.52, 401.28),
					type: "decorWallJoint"
				},
				{
					width: 400,
					angle: 333,
					position: cc.v2( - 240.15, 316.89),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 205,
					position: cc.v2(243.69, 307.29),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 333,
					position: cc.v2( - 249.75, 226.65),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 206,
					position: cc.v2(247.53, 220.89),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 236.31, -90.15),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 90,
					position: cc.v2(5.61, -88.23),
					type: "singleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 250,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 217.23, -377.17),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			23 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2( - 86.4, 241.92),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2(80.64, 238.08),
					type: "wallVert"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 165.98, -176.79),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 182.4, 193.92),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 172.8, -420.48),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 190.08, -168.32),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(173.83, 234.94),
					type: "bomb"
				},
				{
					angle: 0,
					position: cc.v2( - 86.4, 286.08),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(78.72, 288),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 88.32, 209.28),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(80.64, 209.28),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 96, -174.72),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 253.44, -178.56),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 251.52, 395.52),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(261.12, 397.44),
					type: "decorWallJoint"
				},
				{
					width: 250,
					angle: 0,
					position: cc.v2( - 253.59, 186.33),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 180,
					position: cc.v2(249.45, 182.49),
					type: "singleLatch"
				},
				{
					width: 800,
					angle: 148,
					position: cc.v2(230.25, -168.87),
					type: "singleLatch"
				},
				{
					width: 100,
					angle: 270,
					position: cc.v2( - 96.15, -90.15),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			24 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 150.62, -197.91),
					type: "wallHorz"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2(67.2, 238.08),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(167.04, -184.32),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(174.72, 11.52),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 168.96, -183.68),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(169.99, 202.3),
					type: "chest"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 141.94, 206.51),
					type: "lava"
				},
				{
					width: 380,
					angle: 180,
					position: cc.v2(259.05, .09),
					type: "singleLatch"
				},
				{
					width: 380,
					angle: 180,
					position: cc.v2(260.97, 190.17),
					type: "singleLatch"
				},
				{
					width: 450,
					angle: 90,
					position: cc.v2(9.45, -305.19),
					type: "singleLatch"
				},
				{
					width: 520,
					angle: 324,
					position: cc.v2( - 276.63, 222.81),
					type: "singleLatch"
				},
				{
					width: 380,
					angle: 270,
					position: cc.v2(9.45, 245.85),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 180,
					position: cc.v2(230.25, -191.91),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			25 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 300,
					angle: 0,
					position: cc.v2( - 76.8, 238.08),
					type: "wallVert"
				},
				{
					height: 300,
					angle: 0,
					position: cc.v2(82.56, 234.24),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 30.72, 105.6),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(192, -336),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(190.08, 133.12),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 180.48, 328.32),
					type: "gold"
				},
				{
					partCount: 6,
					angle: 0,
					position: cc.v2( - 7.54, 327.47),
					type: "lava"
				},
				{
					partCount: 40,
					angle: 0,
					position: cc.v2( - 188.16, 161.28),
					type: "water"
				},
				{
					width: 100,
					height: 80,
					angle: 0,
					position: cc.v2(196.88, -376.4),
					type: "platformBox"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 238.23, 253.53),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(236.01, 111.45),
					type: "singleLatch"
				},
				{
					width: 230,
					angle: 0,
					position: cc.v2( - 243.99, 90.33),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(76.65, 272.73),
					type: "singleLatch"
				},
				{
					width: 220,
					angle: 180,
					position: cc.v2(82.41, 94.17),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 324,
					position: cc.v2( - 261.27, -178.47),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			26 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 540,
					angle: 0,
					position: cc.v2( - 4.7, -5.91),
					type: "wallHorz"
				},
				{
					width: 120,
					angle: 0,
					position: cc.v2( - 194.78, -213.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(192, -410.88),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 172.8, -195.84),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 195.84, 209.28),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(151.68, 192.64),
					type: "characterMain"
				},
				{
					partCount: 25,
					angle: 0,
					position: cc.v2( - 51.7, 58.67),
					type: "lava"
				},
				{
					angle: 0,
					position: cc.v2(159.36, -96.76),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2(90.24, -371.42),
					type: "trapDropTrigger"
				},
				{
					width: 300,
					angle: 180,
					position: cc.v2(255.21, 188.25),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 270,
					position: cc.v2(47.85, 393.69),
					type: "singleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 150,
					latchAngle: 0,
					angle: 90,
					isFlip: !1,
					position: cc.v2( - 228.75, -213.97),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 259.35, 172.89),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			27 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2( - 99.84, 339.84),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2(72.96, 336),
					type: "wallVert"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 192.86, -80.79),
					type: "wallHorz"
				},
				{
					width: 140,
					angle: 0,
					position: cc.v2( - 185.18, -211.35),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 190.08, -55.68),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(1.92, 151.68),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(170.88, -379.52),
					type: "characterMain"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 32.5, 325.55),
					type: "lava"
				},
				{
					angle: 0,
					position: cc.v2( - 197.76, -159.36),
					type: "sword"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 101.91, 282.33),
					type: "singleLatch"
				},
				{
					width: 450,
					angle: 221,
					position: cc.v2(251.37, 291.93),
					type: "singleLatch"
				},
				{
					width: 450,
					angle: 330,
					position: cc.v2( - 263.19, 243.93),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 160,
					latchAngle: 0,
					angle: 90,
					isFlip: !1,
					position: cc.v2( - 247.95, -213.97),
					type: "doubleLatch"
				},
				{
					latchWidth: 350,
					moveRange: 420,
					latchAngle: 0,
					angle: 180,
					isFlip: !1,
					position: cc.v2(258.94, -398.29),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			28 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -7.68),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 250,
					angle: 0,
					position: cc.v2(123.94, -69.27),
					type: "wallHorz"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 98.78, -278.55),
					type: "wallHorz"
				},
				{
					height: 100,
					angle: 315,
					position: cc.v2(11.52, -368.64),
					type: "wallVert"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(193.06, 178.41),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 175.58, 72.81),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(138.24, -26.88),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 163.2, -259.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(192, 190.08),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 174.72, 252.16),
					type: "characterMain"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2(155.52, -338.96),
					type: "poisonGas"
				},
				{
					angle: 0,
					position: cc.v2(159.36, 348.68),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2( - 178.56, 123.94),
					type: "trapDropTrigger"
				},
				{
					width: 370,
					angle: 0,
					position: cc.v2( - 242.07, 253.53),
					type: "singleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 400,
					latchAngle: 0,
					angle: 90,
					isFlip: !1,
					position: cc.v2( - 226.82, -281.17),
					type: "doubleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 350,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(251.25, -69.97),
					type: "doubleLatch"
				},
				{
					latchWidth: 170,
					moveRange: 200,
					latchAngle: 90,
					angle: 315,
					isFlip: !1,
					position: cc.v2(38.13, -338.77),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			29 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2(127.78, -257.43),
					type: "wallHorz"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2(122.02, 38.25),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(178.56, -241.92),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 161.28, 53.76),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(211.2, -404.48),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 136.32, -368.64),
					type: "sword"
				},
				{
					angle: 0,
					position: cc.v2(136.32, -373.34),
					type: "trapDropTrigger"
				},
				{
					angle: 0,
					position: cc.v2(147.84, -21.88),
					type: "trapDrop"
				},
				{
					latchWidth: 200,
					moveRange: 360,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(260.86, -265.81),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2( - 3.99, -426.15),
					type: "singleLatch"
				},
				{
					width: 320,
					angle: 0,
					position: cc.v2( - 259.35, 38.49),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			30 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 280,
					angle: 0,
					position: cc.v2(131.62, -205.59),
					type: "wallHorz"
				},
				{
					width: 280,
					angle: 0,
					position: cc.v2(125.86, 32.49),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 165.12, -403.2),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(122.88, -407.04),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(120.96, 53.76),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 136.32, 46.72),
					type: "characterMain"
				},
				{
					width: 280,
					angle: 270,
					position: cc.v2( - 3.99, 217.05),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 0,
					position: cc.v2( - 259.35, 36.57),
					type: "singleLatch"
				},
				{
					width: 430,
					angle: 210,
					position: cc.v2(259.05, 386.01),
					type: "singleLatch"
				},
				{
					width: 430,
					angle: 328,
					position: cc.v2( - 259.35, 391.77),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 90,
					position: cc.v2( - 3.99, -426.15),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 270,
					position: cc.v2( - 3.99, 13.53),
					type: "singleLatch"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2(119.04, -93.2),
					type: "poisonGas"
				},
				{
					latchWidth: 230,
					moveRange: 300,
					latchAngle: 0,
					angle: 0,
					isFlip: !0,
					position: cc.v2( - 253.7, -427.09),
					type: "doubleLatch"
				},
				{
					partCount: 8,
					angle: 0,
					position: cc.v2( - 5.62, 315.95),
					type: "lava"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			31 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 123,
					position: cc.v2( - 208.22, 80.49),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(188.16, -34.56),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 157.44, -272),
					type: "characterMain"
				},
				{
					width: 200,
					height: 200,
					angle: 0,
					position: cc.v2(148.88, -370.64),
					type: "platformBox"
				},
				{
					width: 130,
					height: 140,
					angle: 0,
					position: cc.v2( - 198.64, -341.84),
					type: "platformBox"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(165.12, 213.12),
					type: "characterPrincess"
				},
				{
					width: 200,
					height: 100,
					angle: 0,
					position: cc.v2( - 52.73, -416.44),
					type: "fakeBase"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 195.86, 158.95),
					type: "lava"
				},
				{
					width: 700,
					angle: 270,
					position: cc.v2(44.01, 399.45),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 251,
					position: cc.v2( - 80.79, 197.85),
					type: "singleLatch"
				},
				{
					latchWidth: 210,
					moveRange: 300,
					latchAngle: 90,
					angle: 90,
					position: cc.v2(43.89, -283.09),
					type: "doubleLatch"
				},
				{
					width: 250,
					angle: 180,
					position: cc.v2(253.29, 182.49),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 180,
					position: cc.v2(259.05, -44.07),
					type: "singleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 200,
					latchAngle: 90,
					angle: 0,
					position: cc.v2( - 119.3, -296.53),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			32 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2(72.1, -322.71),
					type: "wallHorz"
				},
				{
					height: 220,
					angle: 232,
					position: cc.v2( - 165.12, 297.6),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(61.44, -42.24),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(72.96, 211.2),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2( - 90.24, 271.36),
					type: "characterMain"
				},
				{
					partCount: 13,
					angle: 0,
					position: cc.v2( - 63.36, -369.68),
					type: "coldGas"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 203.52, -403.2),
					type: "characterPrincess"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(147.98, -348.37),
					type: "lava"
				},
				{
					angle: 0,
					position: cc.v2( - 43.07, -404.91),
					type: "trapJaw"
				},
				{
					width: 200,
					angle: 144,
					position: cc.v2(34.41, 147.93),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 217,
					position: cc.v2(249.45, 301.53),
					type: "singleLatch"
				},
				{
					width: 500,
					angle: 326,
					position: cc.v2( - 240.15, 55.77),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 216,
					position: cc.v2(253.29, 2.01),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2( - 146.07, -414.63),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 216,
					position: cc.v2(97.77, 372.57),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			33 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 90,
					position: cc.v2(118.18, 149.61),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 178.56, -403.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(44.16, -405.12),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(215.1, 106.36),
					type: "characterMain"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 186.24, -174.63),
					type: "characterPrincess"
				},
				{
					partCount: 27,
					angle: 0,
					position: cc.v2(195.84, -358.16),
					type: "coldGas"
				},
				{
					width: 500,
					angle: 0,
					position: cc.v2( - 249.75, -193.83),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 270,
					position: cc.v2( - 32.79, -207.27),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 270,
					position: cc.v2(122.73, -197.67),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(132.33, 94.17),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			34 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2(143.14, 76.65),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 192, -408.96),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(124.8, -155.52),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(203.52, -404.48),
					type: "characterMain"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 242.07, -170.79),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 270,
					position: cc.v2( - 101.91, -205.35),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 259.35, 199.77),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2( - 177.53, 211.9),
					type: "chest"
				},
				{
					latchWidth: 200,
					moveRange: 150,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(197.49, 74.03),
					type: "doubleLatch"
				},
				{
					width: 300,
					angle: 270,
					position: cc.v2(88.17, -203.43),
					type: "singleLatch"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 11.52, -292.88),
					type: "coldGas"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			35 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - .86, 9.45),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 8.54, 197.61),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2(4.9, -188.31),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(172.8, 218.88),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(180.48, 24.96),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(161.28, -192),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 184.32, 225.28),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 8.51, 215.25),
					type: "trapJaw"
				},
				{
					angle: 0,
					position: cc.v2( - .83, 32.85),
					type: "trapJaw"
				},
				{
					angle: 0,
					position: cc.v2( - 2.75, -162.99),
					type: "trapJaw"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 243.99, 19.29),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 251.67, 211.29),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 245.91, -172.71),
					type: "singleLatch"
				},
				{
					width: 900,
					angle: 270,
					position: cc.v2( - 115.35, 384.09),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			36 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(78.72, -134.4),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(172.8, 159.36),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 207.36, -305.28),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 207.36, 142.72),
					type: "characterMain"
				},
				{
					width: 250,
					height: 100,
					angle: 0,
					position: cc.v2( - 141.04, -362.96),
					type: "platformBox"
				},
				{
					width: 80,
					height: 100,
					angle: 0,
					position: cc.v2(208.4, -361.04),
					type: "platformBox"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(192, -314.88),
					type: "characterPrincess"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(100.88, -375.99),
					type: "dungeon"
				},
				{
					angle: 0,
					position: cc.v2(170.88, 350.6),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2(36.48, -375.26),
					type: "trapDropTrigger"
				},
				{
					angle: 0,
					position: cc.v2( - 87.23, -308.91),
					type: "trapJaw"
				},
				{
					width: 350,
					angle: 180,
					position: cc.v2(253.29, -161.19),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 270,
					position: cc.v2( - 119.19, 338.01),
					type: "singleLatch"
				},
				{
					width: 750,
					angle: 0,
					position: cc.v2( - 253.59, 136.41),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			37 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 250,
					angle: 35,
					position: cc.v2(150.82, -136.47),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(141.22, -199.83),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 90,
					position: cc.v2( - 60.38, 333.93),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(126.72, -401.28),
					type: "characterEnemy"
				},
				{
					width: 300,
					angle: 270,
					position: cc.v2(20.97, -205.35),
					type: "singleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 200,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(212.85, -208.21),
					type: "doubleLatch"
				},
				{
					width: 500,
					angle: 323,
					position: cc.v2( - 249.75, 217.05),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 58,
					position: cc.v2( - 57.75, 13.53),
					type: "singleLatch"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 63.22, 160.43),
					type: "lava"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2( - 173.91, 281.13),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 159.36, -362.88),
					type: "gold"
				},
				{
					width: 250,
					angle: 0,
					position: cc.v2( - 243.99, 268.89),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			38 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 290,
					angle: 0,
					position: cc.v2(122.02, -17.43),
					type: "wallHorz"
				},
				{
					height: 300,
					angle: 0,
					position: cc.v2( - 24.96, -316.8),
					type: "wallVert"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 41.18, -151.83),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 146.78, 211.05),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(163.2, -401.28),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 151.68, 232.32),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 199.68, -398.72),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(170.88, 269.68),
					type: "coldGas"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(101.76, 66.16),
					type: "coldGas"
				},
				{
					width: 460,
					angle: 180,
					position: cc.v2(266.73, 201.69),
					type: "singleLatch"
				},
				{
					latchWidth: 220,
					moveRange: 230,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(249.33, -20.05),
					type: "doubleLatch"
				},
				{
					latchWidth: 350,
					moveRange: 150,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2( - 23.3, -152.53),
					type: "doubleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 250,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 232.59, 210.35),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 270,
					position: cc.v2(63.21, 341.85),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			39 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2(37.54, 9.45),
					type: "wallHorz"
				},
				{
					height: 300,
					angle: 58,
					position: cc.v2( - 3.84, 278.4),
					type: "wallVert"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 171.74, -28.95),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(216.96, -301.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(36.48, -414.72),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 186.24, -302.72),
					type: "characterMain"
				},
				{
					width: 180,
					height: 100,
					angle: 0,
					position: cc.v2( - 156.4, -362.96),
					type: "platformBox"
				},
				{
					width: 150,
					height: 100,
					angle: 0,
					position: cc.v2(179.6, -368.72),
					type: "platformBox"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 5.76, 318.72),
					type: "gold"
				},
				{
					width: 180,
					height: 100,
					angle: 0,
					position: cc.v2(20.23, -410.68),
					type: "fakeBase"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(32.64, 62.32),
					type: "coldGas"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2( - 170.74, 27.95),
					type: "stone"
				},
				{
					width: 230,
					angle: 270,
					position: cc.v2(109.29, -163.11),
					type: "singleLatch"
				},
				{
					width: 230,
					angle: 270,
					position: cc.v2( - 80.79, -157.35),
					type: "singleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 150,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 224.91, -27.73),
					type: "doubleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 150,
					latchAngle: 0,
					angle: 90,
					isFlip: !1,
					position: cc.v2( - 15.63, 10.67),
					type: "doubleLatch"
				},
				{
					width: 150,
					angle: 270,
					position: cc.v2(109.29, 322.65),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2(120.81, 30.81),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2( - 82.71, -1.83),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			40 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 220,
					angle: 0,
					position: cc.v2( - 144.86, 59.37),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 126.72, -401.28),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(153.6, -407.04),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 192, 69.76),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(164.23, -102.98),
					type: "chest"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2( - 19.2, 312.96),
					type: "water"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 1.78, 185.39),
					type: "lava"
				},
				{
					angle: 0,
					position: cc.v2( - 147.84, -121.72),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2(213.12, 50.98),
					type: "trapDropTrigger"
				},
				{
					width: 350,
					angle: 180,
					position: cc.v2(328.17, -124.71),
					type: "singleLatch"
				},
				{
					width: 750,
					angle: 214,
					position: cc.v2(343.53, 341.85),
					type: "singleLatch"
				},
				{
					width: 900,
					angle: 328,
					position: cc.v2( - 267.03, 276.57),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 180,
					position: cc.v2(234.09, 265.05),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			41 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2(122.02, -123.03),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(120.96, 119.04),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 188.16, 115.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 197.76, -101.76),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(144, -110.72),
					type: "characterMain"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(201.6, -401.28),
					type: "characterPrincess"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2( - 15.36, 286.96),
					type: "coldGas"
				},
				{
					angle: 0,
					position: cc.v2( - 152.51, -402.99),
					type: "trapJaw"
				},
				{
					angle: 0,
					position: cc.v2(18.37, -399.15),
					type: "trapJaw"
				},
				{
					width: 900,
					angle: 213,
					position: cc.v2(251.37, 165.21),
					type: "singleLatch"
				},
				{
					width: 950,
					angle: 214,
					position: cc.v2(268.65, 403.29),
					type: "singleLatch"
				},
				{
					width: 550,
					angle: 306,
					position: cc.v2( - 172.95, 345.69),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			42 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 180,
					angle: 0,
					position: cc.v2(26.88, 311.04),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 119.04, -418.56),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(170.88, 273.28),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(125.83, 108.22),
					type: "bomb"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 49.92, 293.76),
					type: "gold"
				},
				{
					angle: 0,
					position: cc.v2(33.67, -198.98),
					type: "circleRock"
				},
				{
					width: 250,
					angle: 180,
					position: cc.v2(230.25, 242.01),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 329,
					position: cc.v2( - 209.43, 353.37),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 180,
					position: cc.v2(209.13, 55.77),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 180,
					position: cc.v2(209.13, -249.51),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			43 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 300,
					angle: 0,
					position: cc.v2( - 120.96, 243.84),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 38.4, 90.24),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 201.6, -322.56),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(111.36, -322.56),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 195.84, 254.08),
					type: "characterMain"
				},
				{
					width: 170,
					height: 100,
					angle: 0,
					position: cc.v2(162.32, -368.72),
					type: "platformBox"
				},
				{
					width: 110,
					height: 100,
					angle: 0,
					position: cc.v2( - 187.12, -368.72),
					type: "platformBox"
				},
				{
					angle: 0,
					position: cc.v2(200.71, -306.5),
					type: "chest"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 30.72, 304.24),
					type: "coldGas"
				},
				{
					partCount: 30,
					angle: 0,
					position: cc.v2(186.38, 264.11),
					type: "stone"
				},
				{
					width: 200,
					height: 100,
					angle: 0,
					position: cc.v2( - 23.93, -412.6),
					type: "fakeBase"
				},
				{
					angle: 0,
					position: cc.v2( - 251.52, 395.52),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(261.12, 397.44),
					type: "decorWallJoint"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 267.03, 247.77),
					type: "singleLatch"
				},
				{
					width: 340,
					angle: 180,
					position: cc.v2(120.81, 249.69),
					type: "singleLatch"
				},
				{
					width: 450,
					angle: 90,
					position: cc.v2(145.77, 76.89),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 0,
					position: cc.v2( - 103.83, 84.57),
					type: "singleLatch"
				},
				{
					width: 220,
					angle: 226,
					position: cc.v2(266.73, 240.09),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			44 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2( - 97.92, -362.88),
					type: "wallVert"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2(119.28, -360.96),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(193.92, -24.96),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 182.4, 278.4),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 182.4, -122.88),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(205.44, 269.44),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(199.68, -352.22),
					type: "trapDropTrigger"
				},
				{
					angle: 0,
					position: cc.v2(10.44, 341),
					type: "trapDrop"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 265.11, 259.29),
					type: "singleLatch"
				},
				{
					width: 950,
					angle: 330,
					position: cc.v2( - 276.63, 197.85),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(282.09, 251.61),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 332,
					position: cc.v2( - 242.07, -176.55),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2( - 105.75, -128.55),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 213,
					position: cc.v2(262.89, -178.47),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			45 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 300,
					angle: 0,
					position: cc.v2( - 76.8, 238.08),
					type: "wallVert"
				},
				{
					height: 300,
					angle: 0,
					position: cc.v2(82.56, 234.24),
					type: "wallVert"
				},
				{
					height: 250,
					angle: 0,
					position: cc.v2( - 74.88, -291.84),
					type: "wallVert"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 10.46, -76.95),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 172.8, -410.88),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 170.88, 105.6),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(19.2, -401.28),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(178.56, 126.72),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2( - 3.84, 290.56),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 158.33, 329.02),
					type: "circleRock"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 238.23, 253.53),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(236.01, 111.45),
					type: "singleLatch"
				},
				{
					width: 230,
					angle: 0,
					position: cc.v2( - 243.99, 90.33),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(76.65, 263.13),
					type: "singleLatch"
				},
				{
					width: 220,
					angle: 180,
					position: cc.v2(82.41, 94.17),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 324,
					position: cc.v2( - 247.83, -38.31),
					type: "singleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 150,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 71.31, -75.73),
					type: "doubleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(0, 160.24),
					type: "poisonGas"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			46 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(193.06, 93.93),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 101.76, -130.56),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(205.44, -130.56),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(195.84, 109.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(23.04, 94.08),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2( - 224.64, 269.44),
					type: "characterMain"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 18.16, -374.07),
					type: "dungeon"
				},
				{
					width: 200,
					height: 100,
					angle: 0,
					position: cc.v2(150.8, -362.96),
					type: "platformBox"
				},
				{
					angle: 0,
					position: cc.v2(187.27, -304.58),
					type: "chest"
				},
				{
					width: 120,
					height: 100,
					angle: 0,
					position: cc.v2( - 192.88, -364.88),
					type: "platformBox"
				},
				{
					angle: 0,
					position: cc.v2(174.72, 350.6),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2(65.28, -85.34),
					type: "trapDropTrigger"
				},
				{
					angle: 0,
					position: cc.v2( - 81.47, 96.21),
					type: "trapJaw"
				},
				{
					width: 300,
					angle: 90,
					position: cc.v2( - 11.67, -149.67),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 243.99, 84.57),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 245.91, -136.23),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 270,
					position: cc.v2(70.89, 376.41),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 0,
					position: cc.v2( - 249.75, 259.29),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			47 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 200,
					angle: 0,
					position: cc.v2( - 94.08, 309.12),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(180.48, 222.72),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(149.76, 23.04),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(193.92, -145.92),
					type: "characterEnemy"
				},
				{
					angle: 0,
					position: cc.v2(37.57, 30.93),
					type: "trapJaw"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 251.67, 226.65),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 200.79, 235.04),
					type: "characterMain"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 236.31, 13.53),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2(228.48, 69.12),
					type: "sword"
				},
				{
					width: 500,
					angle: 180,
					position: cc.v2(259.05, 217.05),
					type: "singleLatch"
				},
				{
					width: 100,
					height: 100,
					angle: 0,
					position: cc.v2(202.64, -359.12),
					type: "platformBox"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2(84.33, 226.65),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 20.98, 275.63),
					type: "lava"
				},
				{
					width: 250,
					height: 100,
					angle: 0,
					position: cc.v2(27.91, -414.52),
					type: "fakeBase"
				},
				{
					width: 140,
					height: 100,
					angle: 0,
					position: cc.v2( - 173.68, -361.04),
					type: "platformBox"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2(11.52, -370.56),
					type: "water"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(201.6, -295.68),
					type: "characterPrincess"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 249.75, -151.59),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			48 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -7.68),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 350,
					angle: 0,
					position: cc.v2(91.3, -90.39),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 148.7, -284.31),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 177.5, 195.69),
					type: "wallHorz"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2(115.2, 305.28),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(65.28, -80.64),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 163.2, -259.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(188.16, 82.56),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 180.48, 211.84),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 51.84, -38.4),
					type: "sword"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(172.8, 302.32),
					type: "coldGas"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(170.88, -405.12),
					type: "characterPrincess"
				},
				{
					width: 320,
					angle: 270,
					position: cc.v2( - 105.75, 403.29),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(259.05, 73.05),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(259.05, 238.17),
					type: "singleLatch"
				},
				{
					width: 500,
					angle: 180,
					position: cc.v2(259.05, -285.99),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			49 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 490,
					angle: 0,
					position: cc.v2( - 48, 151.68),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(23.04, -289.92),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 163.2, 61.44),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 176.64, -76.8),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(184.32, -287.36),
					type: "characterMain"
				},
				{
					width: 320,
					angle: 0,
					position: cc.v2( - 261.27, 195.93),
					type: "singleLatch"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 178.56, 285.04),
					type: "coldGas"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 176.64, 264.96),
					type: "gold"
				},
				{
					width: 320,
					angle: 0,
					position: cc.v2( - 259.35, 38.49),
					type: "singleLatch"
				},
				{
					width: 320,
					angle: 90,
					position: cc.v2(116.97, -282.15),
					type: "singleLatch"
				},
				{
					width: 370,
					height: 130,
					angle: 0,
					position: cc.v2(64.4, -353.36),
					type: "platformBox"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 167.92, -351.03),
					type: "dungeon"
				},
				{
					width: 320,
					angle: 0,
					position: cc.v2( - 263.19, -92.07),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			50 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 200,
					angle: 0,
					position: cc.v2(23.04, -347.52),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 209.28, -407.04),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(172.8, -403.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 184.32, -60.8),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 98.81, 229.18),
					type: "circleRock"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(136.32, -80.64),
					type: "characterPrincess"
				},
				{
					width: 350,
					angle: 332,
					position: cc.v2( - 243.99, 243.93),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 206,
					position: cc.v2(230.25, -95.91),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 270,
					position: cc.v2( - 28.95, 341.85),
					type: "singleLatch"
				},
				{
					latchWidth: 300,
					moveRange: 200,
					latchAngle: 0,
					angle: 0,
					isFlip: !1,
					position: cc.v2( - 253.7, -68.05),
					type: "doubleLatch"
				},
				{
					width: 350,
					angle: 270,
					position: cc.v2(47.85, 46.17),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			51 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 193.92, 21.12),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 7.68, 220.8),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(186.24, -126.72),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 23.04, -32.64),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(199.68, -312.96),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 192, -302.72),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 169.85, 330.94),
					type: "circleRock"
				},
				{
					angle: 0,
					position: cc.v2( - 25.79, -399.15),
					type: "trapJaw"
				},
				{
					width: 800,
					angle: 343,
					position: cc.v2( - 263.19, 276.57),
					type: "singleLatch"
				},
				{
					width: 800,
					angle: 342,
					position: cc.v2( - 261.27, 15.45),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 239,
					position: cc.v2( - 38.55, 389.85),
					type: "singleLatch"
				},
				{
					width: 340,
					angle: 242,
					position: cc.v2(168.81, 393.69),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 61,
					position: cc.v2(45.93, -78.63),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 62,
					position: cc.v2( - 157.59, -7.59),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(157.44, 221.68),
					type: "coldGas"
				},
				{
					width: 150,
					height: 100,
					angle: 0,
					position: cc.v2( - 173.68, -364.88),
					type: "platformBox"
				},
				{
					width: 150,
					height: 100,
					angle: 0,
					position: cc.v2(171.92, -362.96),
					type: "platformBox"
				},
				{
					latchWidth: 200,
					moveRange: 150,
					latchAngle: 90,
					angle: 90,
					position: cc.v2(113.02, -325.33),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2( - 119.19, -324.39),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			52 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 318,
					position: cc.v2( - 189.02, 274.41),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(197.76, -401.28),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 7.68, -138.24),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 157.44, -387.2),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(1.09, -401.07),
					type: "trapJaw"
				},
				{
					latchWidth: 150,
					moveRange: 660,
					latchAngle: 0,
					angle: 0,
					isFlip: !0,
					position: cc.v2( - 228.75, -407.89),
					type: "doubleLatch"
				},
				{
					width: 300,
					angle: 90,
					position: cc.v2(93.93, -420.39),
					type: "singleLatch"
				},
				{
					width: 500,
					angle: 180,
					position: cc.v2(249.45, -149.67),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(203.52, -134.4),
					type: "characterPrincess"
				},
				{
					width: 200,
					angle: 270,
					position: cc.v2(88.17, -28.71),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 34.71, 71.13),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 153.46, 319.79),
					type: "lava"
				},
				{
					width: 270,
					angle: 225,
					position: cc.v2( - 3.99, 359.13),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			53 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2( - 26.88, 311.04),
					type: "wallVert"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2(136.32, 307.2),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 180.48, 216.96),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 211.2, -97.92),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(192, -101.76),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(213.12, 236.8),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 192, -257.28),
					type: "gold"
				},
				{
					width: 240,
					height: 100,
					angle: 0,
					position: cc.v2( - 123.76, -364.88),
					type: "platformBox"
				},
				{
					width: 100,
					height: 100,
					angle: 0,
					position: cc.v2(194.96, -362.96),
					type: "platformBox"
				},
				{
					partCount: 25,
					angle: 0,
					position: cc.v2(44.3, 281.39),
					type: "stone"
				},
				{
					width: 150,
					height: 100,
					angle: 0,
					position: cc.v2(70.15, -404.92),
					type: "fakeBase"
				},
				{
					angle: 0,
					position: cc.v2( - 110.27, -310.83),
					type: "trapJaw"
				},
				{
					width: 400,
					angle: 180,
					position: cc.v2(243.69, 205.53),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 253.59, -109.35),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 90,
					position: cc.v2( - 27.03, -105.51),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2( - 25.11, -339.75),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 255.51, 211.29),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			54 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 200,
					angle: 45,
					position: cc.v2(96, -384),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 203.52, -399.36),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(155.52, 240),
					type: "characterEnemy"
				},
				{
					angle: 0,
					position: cc.v2(7.68, 279.46),
					type: "trapDropTrigger"
				},
				{
					angle: 0,
					position: cc.v2( - 163.2, 131.72),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2(187.27, 127.42),
					type: "bomb"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(111.21, 55.77),
					type: "singleLatch"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(153.74, -373.33),
					type: "lava"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 191.19, 248.48),
					type: "characterMain"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 236.31, 217.05),
					type: "singleLatch"
				},
				{
					width: 230,
					angle: 90,
					position: cc.v2( - 99.99, 230.49),
					type: "singleLatch"
				},
				{
					width: 480,
					angle: 180,
					position: cc.v2(239.85, 217.05),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			55 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 169.82, 191.85),
					type: "wallHorz"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2(69.12, 314.88),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 149.76, 209.28),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 165.12, -38.4),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(234.24, -42.24),
					type: "characterSnake"
				},
				{
					angle: 0,
					position: cc.v2( - 64.19, -276.27),
					type: "trapJaw"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(106.64, -352.95),
					type: "dungeon"
				},
				{
					width: 270,
					height: 120,
					angle: 0,
					position: cc.v2( - 116.08, -353.36),
					type: "platformBox"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(162.09, 215.85),
					type: "characterMain"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(134.25, 207.45),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 205.44, -286.08),
					type: "characterPrincess"
				},
				{
					latchWidth: 150,
					moveRange: 150,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 224.91, 191.15),
					type: "doubleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 243.99, -53.67),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 90,
					position: cc.v2(105.45, -45.99),
					type: "singleLatch"
				},
				{
					width: 70,
					height: 120,
					angle: 0,
					position: cc.v2(210.32, -355.28),
					type: "platformBox"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			56 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(190.08, 240),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 147.84, -276.48),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 172.8, 254.08),
					type: "characterMain"
				},
				{
					partCount: 8,
					angle: 0,
					position: cc.v2(0, 217.84),
					type: "poisonGas"
				},
				{
					width: 250,
					height: 150,
					angle: 0,
					position: cc.v2(120.08, -343.76),
					type: "platformBox"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(182.4, -226.56),
					type: "characterPrincess"
				},
				{
					width: 500,
					angle: 45,
					position: cc.v2( - 247.83, 138.33),
					type: "singleLatch"
				},
				{
					width: 500,
					angle: 135,
					position: cc.v2(241.77, 134.49),
					type: "singleLatch"
				},
				{
					width: 550,
					angle: 135,
					position: cc.v2(26.73, -47.91),
					type: "singleLatch"
				},
				{
					width: 550,
					angle: 45,
					position: cc.v2( - 5.91, -57.51),
					type: "singleLatch"
				},
				{
					latchWidth: 250,
					moveRange: 280,
					latchAngle: 90,
					angle: 90,
					position: cc.v2(18.93, -290.77),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2( - 32.79, -284.07),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			57 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 280,
					angle: 0,
					position: cc.v2( - 58.46, -42.39),
					type: "wallHorz"
				},
				{
					height: 110,
					angle: 0,
					position: cc.v2(109.44, 334.08),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 96, 132.48),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(17.28, -23.04),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 172.8, -253.44),
					type: "characterEnemy"
				},
				{
					width: 300,
					height: 150,
					angle: 0,
					position: cc.v2( - 94.96, -341.84),
					type: "platformBox"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(149.9, -375.25),
					type: "lava"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(188.97, 277.29),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 111.36, 330.24),
					type: "sword"
				},
				{
					latchWidth: 150,
					moveRange: 300,
					latchAngle: 0,
					angle: 90,
					isFlip: !1,
					position: cc.v2( - 161.54, -45.01),
					type: "doubleLatch"
				},
				{
					width: 220,
					angle: 0,
					position: cc.v2( - 211.35, 124.89),
					type: "singleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 250,
					latchAngle: 90,
					angle: 270,
					position: cc.v2(41.97, -290.77),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(262.89, 257.37),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 220.95, 286.17),
					type: "singleLatch"
				},
				{
					width: 240,
					angle: 270,
					position: cc.v2( - 69.27, -97.83),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			58 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 200,
					angle: 90,
					position: cc.v2(142.08, -253.44),
					type: "wallVert"
				},
				{
					height: 300,
					angle: 135,
					position: cc.v2(159.36, 134.4),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 176.64, -232.32),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(176.64, -234.24),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 170.88, 44.16),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 176.64, 254.08),
					type: "characterMain"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2(147.84, -360.96),
					type: "gold"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2( - 140.16, -352.4),
					type: "coldGas"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(147.98, 218.03),
					type: "lava"
				},
				{
					angle: 0,
					position: cc.v2( - 68.03, -406.83),
					type: "trapJaw"
				},
				{
					angle: 0,
					position: cc.v2(256.3, 246.36),
					type: "decorWallCorner"
				},
				{
					width: 430,
					angle: 0,
					position: cc.v2( - 251.67, -257.19),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 0,
					position: cc.v2( - 253.59, 240.09),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 270,
					position: cc.v2(49.77, -65.19),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 0,
					position: cc.v2( - 232.47, 30.81),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 270,
					position: cc.v2(63.21, 249.69),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			59 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 200,
					angle: 62,
					position: cc.v2( - 55.68, 63.36),
					type: "wallVert"
				},
				{
					height: 250,
					angle: 62,
					position: cc.v2( - 149.76, -17.28),
					type: "wallVert"
				},
				{
					height: 200,
					angle: 0,
					position: cc.v2(24.96, -336),
					type: "wallVert"
				},
				{
					width: 150,
					angle: 153,
					position: cc.v2( - 204.38, 280.17),
					type: "wallHorz"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 70.9, 152.75),
					type: "lava"
				},
				{
					partCount: 30,
					angle: 0,
					position: cc.v2( - 174.72, -345.6),
					type: "water"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(158.25, -383.19),
					type: "characterMain"
				},
				{
					latchWidth: 200,
					moveRange: 200,
					latchAngle: 0,
					angle: 62,
					isFlip: !0,
					position: cc.v2(9.33, 27.95),
					type: "doubleLatch"
				},
				{
					width: 250,
					angle: 153,
					position: cc.v2(61.29, -193.83),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 35,
					position: cc.v2( - 25.11, -186.15),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 225,
					position: cc.v2(13.29, 386.01),
					type: "singleLatch"
				},
				{
					partCount: 8,
					angle: 0,
					position: cc.v2( - 157.44, 311.04),
					type: "gold"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			60 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 27.74, 272.49),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(141.22, 28.65),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(178.56, -163.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 205.44, -199.68),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 88.32, -103.68),
					type: "characterEnemy"
				},
				{
					angle: 0,
					position: cc.v2(168.13, -402.99),
					type: "trapJaw"
				},
				{
					angle: 0,
					position: cc.v2(95.11, 83.26),
					type: "circleRock"
				},
				{
					width: 800,
					angle: 334,
					position: cc.v2( - 253.59, -44.07),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 103.94, 275.63),
					type: "doubleLatch"
				},
				{
					angle: 0,
					position: cc.v2( - 8.57, 330.94),
					type: "bomb"
				},
				{
					width: 600,
					angle: 43,
					position: cc.v2( - 245.91, -307.11),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 185.43, 269.6),
					type: "characterMain"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 259.35, 253.53),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			61 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(12.58, 24.81),
					type: "wallHorz"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2(111.36, 339.84),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 186.24, -228.48),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(5.76, -213.12),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(42.24, 40.32),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(198.57, 277.28),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 92.99, -410.67),
					type: "trapJaw"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(143.85, 261.21),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 188.16, -355.2),
					type: "gold"
				},
				{
					width: 250,
					angle: 90,
					position: cc.v2(13.29, -418.47),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(153.6, -362),
					type: "coldGas"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 251.67, -237.99),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 270,
					position: cc.v2( - 94.23, -59.43),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 270,
					isFlip: !0,
					position: cc.v2( - 42.51, 170.03),
					type: "doubleLatch"
				},
				{
					width: 400,
					angle: 224,
					position: cc.v2( - 51.99, 370.65),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 201.46, 312.11),
					type: "lava"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			62 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 4.7, -30.87),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 171.74, 207.21),
					type: "wallHorz"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2(92.16, -341.76),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(13.44, -13.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(168.96, 211.2),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 158.55, 225.44),
					type: "characterMain"
				},
				{
					latchWidth: 150,
					moveRange: 200,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 73.23, -31.57),
					type: "doubleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 150,
					latchAngle: 0,
					angle: 270,
					isFlip: !0,
					position: cc.v2( - 234.5, 369.71),
					type: "doubleLatch"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(163.34, -371.41),
					type: "lava"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2( - 61.59, -410.79),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 165.12, -369.68),
					type: "coldGas"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(5.76, -364.8),
					type: "gold"
				},
				{
					latchWidth: 150,
					moveRange: 180,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(243.58, 360.11),
					type: "doubleLatch"
				},
				{
					width: 250,
					angle: 180,
					position: cc.v2(257.13, 199.77),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			63 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 198.62, -111.51),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 36.48, -82.56),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 188.16, -322.56),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(159.36, 74.88),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 153.6, 84.48),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(206.25, -292.96),
					type: "characterMain"
				},
				{
					width: 120,
					height: 100,
					angle: 0,
					position: cc.v2( - 189.04, -374.48),
					type: "platformBox"
				},
				{
					width: 180,
					height: 100,
					angle: 0,
					position: cc.v2(160.4, -368.72),
					type: "platformBox"
				},
				{
					angle: 0,
					position: cc.v2( - 35.45, 336.7),
					type: "bomb"
				},
				{
					width: 750,
					angle: 0,
					position: cc.v2( - 261.27, 71.13),
					type: "singleLatch"
				},
				{
					width: 600,
					angle: 270,
					position: cc.v2(51.69, 268.89),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2( - 2.07, -111.27),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 0,
					position: cc.v2( - 268.95, 276.57),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 90,
					position: cc.v2( - 134.55, -113.19),
					type: "singleLatch"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 218.88, -41.36),
					type: "coldGas"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			64 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 170,
					angle: 0,
					position: cc.v2(173.86, 234.09),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(23.04, -403.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 197.76, 51.84),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2( - 17.28, -138.24),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 191.19, 252.32),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 127.55, -402.99),
					type: "trapJaw"
				},
				{
					width: 400,
					angle: 217,
					position: cc.v2( - 23.19, 341.85),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2(168.07, 48.7),
					type: "chest"
				},
				{
					width: 750,
					angle: 180,
					position: cc.v2(264.81, 34.65),
					type: "singleLatch"
				},
				{
					width: 750,
					angle: 0,
					position: cc.v2( - 251.67, -153.51),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2(92.01, 245.85),
					type: "singleLatch"
				},
				{
					partCount: 25,
					angle: 0,
					position: cc.v2(151.68, 300.4),
					type: "coldGas"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			65 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(31.78, 278.25),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(148.9, 97.77),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 103.68, -21.12),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 193.92, -211.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(176.64, -163.2),
					type: "characterSnake"
				},
				{
					angle: 0,
					position: cc.v2(102.79, 167.74),
					type: "circleRock"
				},
				{
					angle: 0,
					position: cc.v2(54.79, 344.38),
					type: "bomb"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(179.37, -404.32),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 213.12, 334.08),
					type: "gold"
				},
				{
					angle: 0,
					position: cc.v2( - 85.31, -402.99),
					type: "trapJaw"
				},
				{
					width: 800,
					angle: 334,
					position: cc.v2( - 243.99, -11.43),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 40.58, 277.55),
					type: "doubleLatch"
				},
				{
					width: 700,
					angle: 33,
					position: cc.v2( - 228.63, -266.79),
					type: "singleLatch"
				},
				{
					width: 330,
					angle: 38,
					position: cc.v2( - 242.07, 236.25),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 280,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(241.65, -423.25),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			66 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 142.94, 203.37),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 148.7, -128.79),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(33.7, 42.09),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 159.36, -399.36),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 159.36, -105.6),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(49.92, 65.28),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(213.93, 277.28),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(44.16, -375.26),
					type: "trapDropTrigger"
				},
				{
					angle: 0,
					position: cc.v2(28.8, -156.28),
					type: "trapDrop"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 221.06, 204.59),
					type: "doubleLatch"
				},
				{
					width: 300,
					angle: 135,
					position: cc.v2(220.65, 218.97),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 220,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 46.34, 37.55),
					type: "doubleLatch"
				},
				{
					angle: 0,
					position: cc.v2( - 142.97, 229.18),
					type: "chest"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			67 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(186.24, -199.68),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 207.36, -205.44),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 130.56, -76.8),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 170.88, 243.84),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(1.92, 243.84),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 208.47, -364),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(78.86, -329.17),
					type: "lava"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(163.2, 298.48),
					type: "poisonGas"
				},
				{
					width: 100,
					height: 50,
					angle: 0,
					position: cc.v2( - 202.48, -387.92),
					type: "platformBox"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 243.99, 218.97),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2( - 76.95, 230.49),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2(92.01, 228.57),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 90,
					position: cc.v2( - 9.75, -414.63),
					type: "singleLatch"
				},
				{
					width: 750,
					angle: 337,
					position: cc.v2( - 236.31, -53.67),
					type: "singleLatch"
				},
				{
					width: 750,
					angle: 25,
					position: cc.v2( - 251.67, -251.43),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			68 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(156.58, 255.21),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 152.54, -38.55),
					type: "wallHorz"
				},
				{
					height: 130,
					angle: 0,
					position: cc.v2(90.24, 3.84),
					type: "wallVert"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 2.78, 105.45),
					type: "wallHorz"
				},
				{
					width: 250,
					angle: 0,
					position: cc.v2( - 125.66, -238.23),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 182.4, -23.04),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(201.6, -213.12),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 172.8, -222.72),
					type: "characterEnemy"
				},
				{
					angle: 0,
					position: cc.v2(133.57, -395.31),
					type: "trapJaw"
				},
				{
					latchWidth: 100,
					moveRange: 170,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(228.22, 252.59),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(105.45, -47.91),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(144, 270.72),
					type: "characterPrincess"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(72.69, 110.51),
					type: "doubleLatch"
				},
				{
					width: 400,
					angle: 180,
					position: cc.v2(255.21, -245.67),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 196.95, -413.91),
					type: "characterMain"
				},
				{
					width: 240,
					angle: 90,
					position: cc.v2( - 53.91, -230.31),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			69 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(84.48, 195.84),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 178.56, -155.52),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 120.96, -272.64),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(186.24, 61.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 198.87, 265.76),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(79.81, -253.23),
					type: "trapJaw"
				},
				{
					width: 550,
					angle: 31,
					position: cc.v2( - 238.23, 203.61),
					type: "singleLatch"
				},
				{
					width: 830,
					angle: 31,
					position: cc.v2( - 247.83, -36.39),
					type: "singleLatch"
				},
				{
					width: 850,
					angle: 31,
					position: cc.v2( - 242.07, -234.15),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2(210.31, -252.74),
					type: "chest"
				},
				{
					width: 280,
					height: 150,
					angle: 0,
					position: cc.v2(106.64, -336.08),
					type: "platformBox"
				},
				{
					latchWidth: 200,
					moveRange: 350,
					latchAngle: 90,
					angle: 90,
					position: cc.v2( - 38.66, -273.49),
					type: "doubleLatch"
				},
				{
					width: 930,
					angle: 270,
					position: cc.v2( - 15.51, 395.61),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 155.52, 116.08),
					type: "poisonGas"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			70 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 148.7, -99.99),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 3.84, 23.04),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 48, -403.2),
					type: "characterSnake"
				},
				{
					angle: 0,
					position: cc.v2(79.81, -393.39),
					type: "trapJaw"
				},
				{
					width: 600,
					angle: 135,
					position: cc.v2(270.57, 98.01),
					type: "singleLatch"
				},
				{
					width: 600,
					angle: 43,
					position: cc.v2( - 255.51, 113.37),
					type: "singleLatch"
				},
				{
					width: 500,
					angle: 45,
					position: cc.v2(3.69, -67.11),
					type: "singleLatch"
				},
				{
					partCount: 30,
					angle: 0,
					position: cc.v2( - 195.84, 286.96),
					type: "poisonGas"
				},
				{
					width: 500,
					angle: 135,
					position: cc.v2( - 3.99, -67.11),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 203.52, -339.84),
					type: "gold"
				},
				{
					width: 200,
					angle: 62,
					position: cc.v2( - 142.23, -403.11),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 206.55, -74.08),
					type: "characterMain"
				},
				{
					partCount: 30,
					angle: 0,
					position: cc.v2(170.88, 298.48),
					type: "coldGas"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			71 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2( - .86, 406.9),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 258.08, -5.76),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 15,
					position: cc.v2( - 115.95, 217.09),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 16,
					position: cc.v2( - 167.85, -28.97),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 158.24, -63.57),
					type: "wallHorz"
				},
				{
					width: 300,
					angle: 165,
					position: cc.v2( - 4.45, 130.58),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 166,
					position: cc.v2(41.69, -376.91),
					type: "wallHorz"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(48.05, 284.5),
					type: "gold"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(180.86, -347.03),
					type: "lava"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 174.93, 36.52),
					type: "water"
				},
				{
					width: 200,
					height: 80,
					angle: 0,
					position: cc.v2( - 147.18, -375.17),
					type: "platformBox"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(196.08, -12.94),
					type: "poisonGas"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 189.69, -333.63),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 149.94, 201.84),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 57.67, -9.61),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 57.67, -51.9),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 255.67, -61.51),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 148.02, 159.55),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(123.03, -397.92),
					type: "decorWallJoint"
				},
				{
					latchWidth: 240,
					moveRange: 240,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(138.32, 398.78),
					type: "doubleLatch"
				},
				{
					width: 300,
					angle: 165,
					position: cc.v2(119.06, 182.89),
					type: "singleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 250,
					latchAngle: 0,
					angle: 90,
					isFlip: !1,
					position: cc.v2( - 253.83, -62.58),
					type: "doubleLatch"
				},
				{
					width: 220,
					angle: 161,
					position: cc.v2(261.31, -97.77),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2(123.03, 84.58),
					type: "decorWallJoint"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			72 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 195.84, 165.12),
					type: "characterEnemy"
				},
				{
					width: 150,
					height: 150,
					angle: 0,
					position: cc.v2(171.92, 26.8),
					type: "platformBox"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(187.05, 123.68),
					type: "characterMain"
				},
				{
					width: 140,
					angle: 180,
					position: cc.v2(259.05, -261.03),
					type: "singleLatch"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2(65.42, -142.93),
					type: "lava"
				},
				{
					width: 200,
					height: 200,
					angle: 0,
					position: cc.v2( - 148.72, -313.04),
					type: "platformBox"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(207.36, -253.44),
					type: "characterPrincess"
				},
				{
					latchWidth: 200,
					moveRange: 250,
					latchAngle: 90,
					angle: 270,
					isFlip: !1,
					position: cc.v2( - 52.11, -261.97),
					type: "doubleLatch"
				},
				{
					width: 400,
					angle: 270,
					position: cc.v2(113.13, 380.25),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 90,
					position: cc.v2(157.29, -261.03),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 240.15, 115.29),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			73 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 246.56, -5.76),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(246.56, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2(0, 46.08),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 184.32, -387.84),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(155.52, -161.28),
					type: "characterSnake"
				},
				{
					angle: 0,
					position: cc.v2( - 18.11, -412.59),
					type: "trapJaw"
				},
				{
					width: 500,
					angle: 337,
					position: cc.v2( - 261.27, 226.65),
					type: "singleLatch"
				},
				{
					width: 500,
					angle: 204,
					position: cc.v2(259.05, 228.57),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 189.27, -20.31),
					type: "characterMain"
				},
				{
					width: 350,
					angle: 0,
					position: cc.v2( - 251.67, -22.95),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 270,
					position: cc.v2( - .15, 366.81),
					type: "singleLatch"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2( - 115.06, 233.39),
					type: "lava"
				},
				{
					width: 350,
					angle: 180,
					position: cc.v2(253.29, -22.95),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 179,
					position: cc.v2(226.41, -191.91),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2(141.19, 6.46),
					type: "chest"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			74 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 246.56, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 170.88, -186.24),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(188.16, -172.8),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 151.68, 119.04),
					type: "characterSnake"
				},
				{
					angle: 0,
					position: cc.v2(195.84, -373.34),
					type: "trapDropTrigger"
				},
				{
					angle: 0,
					position: cc.v2( - 53.76, 348.68),
					type: "trapDrop"
				},
				{
					width: 750,
					angle: 0,
					position: cc.v2( - 272.79, 103.77),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 180,
					position: cc.v2(264.81, 238.17),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2(177.67, 261.82),
					type: "chest"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(39.21, -408.15),
					type: "characterMain"
				},
				{
					width: 750,
					angle: 180,
					position: cc.v2(266.73, -201.51),
					type: "singleLatch"
				},
				{
					width: 600,
					angle: 270,
					position: cc.v2(103.53, 5.85),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			75 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2( - 4.7, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(152.74, -.15),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 168.96, -207.36),
					type: "characterEnemy"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2( - 7.54, 289.07),
					type: "lava"
				},
				{
					partCount: 100,
					angle: 0,
					position: cc.v2( - 176.64, -351.36),
					type: "water"
				},
				{
					width: 150,
					height: 100,
					angle: 0,
					position: cc.v2(16.4, -366.8),
					type: "platformBox"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(203.52, -403.2),
					type: "characterPrincess"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(177.45, 261.92),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 151.68, 49.16),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2(182.4, 50.98),
					type: "trapDropTrigger"
				},
				{
					width: 490,
					angle: 203,
					position: cc.v2(262.89, 236.25),
					type: "singleLatch"
				},
				{
					width: 420,
					angle: 270,
					position: cc.v2( - 50.07, 391.77),
					type: "singleLatch"
				},
				{
					width: 330,
					angle: 270,
					position: cc.v2(72.81, 389.85),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 274.71, -239.91),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			76 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 16,
					position: cc.v2( - 162.08, 228.62),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 16,
					position: cc.v2( - 162.08, 63.3),
					type: "wallHorz"
				},
				{
					width: 180,
					angle: 163,
					position: cc.v2(103.2, 119.05),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 163,
					position: cc.v2(70.52, -75.11),
					type: "wallHorz"
				},
				{
					width: 180,
					angle: 16,
					position: cc.v2(107.05, -217.36),
					type: "wallHorz"
				},
				{
					width: 300,
					angle: 169,
					position: cc.v2(9.01, -382.68),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 164, 30.62),
					type: "wallHorz"
				},
				{
					width: 180,
					angle: 0,
					position: cc.v2(101.28, -242.35),
					type: "wallHorz"
				},
				{
					latchWidth: 360,
					moveRange: 240,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 259.6, 33.54),
					type: "doubleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 184.54, 294.12),
					type: "water"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 192.23, 128.8),
					type: "gold"
				},
				{
					width: 120,
					height: 200,
					angle: 0,
					position: cc.v2( - 187.55, -317.5),
					type: "platformBox"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(184.71, -372.02),
					type: "lava"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 199.3, -218.29),
					type: "characterMain"
				},
				{
					latchWidth: 350,
					moveRange: 210,
					latchAngle: 0,
					angle: 90,
					position: cc.v2(24.91, -241.35),
					type: "doubleLatch"
				},
				{
					latchWidth: 260,
					moveRange: 220,
					latchAngle: 0,
					angle: 270,
					isFlip: !0,
					position: cc.v2(24.91, 400.7),
					type: "doubleLatch"
				},
				{
					width: 120,
					angle: 180,
					position: cc.v2(263.23, 94.46),
					type: "singleLatch"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 192.23, 290.79),
					type: "poisonGas"
				},
				{
					angle: 0,
					position: cc.v2( - 84.58, 30.76),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 82.66, 73.05),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 265.28, 32.68),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(171.09, 88.43),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(178.78, -246.06),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(23.07, -247.98),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(178.78, -201.84),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(138.41, -415.22),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 263.36, 201.84),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(255.67, 401.77),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 259.51, 397.92),
					type: "decorWallJoint"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			77 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 246.56, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2(173.86, 157.29),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 19.2, -24.96),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 176.64, -259.2),
					type: "characterSnake"
				},
				{
					width: 500,
					angle: 0,
					position: cc.v2( - 249.75, 153.69),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(13.44, -399.36),
					type: "characterPrincess"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(210.09, 244.64),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 174.72, 249.6),
					type: "sword"
				},
				{
					partCount: 50,
					angle: 0,
					position: cc.v2( - 23.04, 277.36),
					type: "coldGas"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 245.91, -280.23),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 270,
					position: cc.v2( - 94.23, 403.29),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 270,
					position: cc.v2(97.77, 405.21),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 0,
					position: cc.v2( - 245.91, -90.15),
					type: "singleLatch"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 148.72, -349.11),
					type: "dungeon"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			78 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 152.54, 147.69),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2(171.94, -140.31),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 200.54, -138.39),
					type: "wallHorz"
				},
				{
					width: 350,
					angle: 70,
					position: cc.v2(39.46, -297.75),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(180.48, -124.8),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 188.16, 176.64),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(182.4, 149.76),
					type: "characterSnake"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2( - 176.5, -352.21),
					type: "lava"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 198.87, -106.72),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(157.44, 348.68),
					type: "trapDrop"
				},
				{
					angle: 70,
					position: cc.v2( - 5.76, -265.82),
					type: "trapDropTrigger"
				},
				{
					width: 300,
					angle: 90,
					position: cc.v2( - 136.47, -138.15),
					type: "singleLatch"
				},
				{
					latchWidth: 220,
					moveRange: 220,
					latchAngle: 90,
					angle: 90,
					position: cc.v2(82.29, -154.45),
					type: "doubleLatch"
				},
				{
					latchWidth: 300,
					moveRange: 300,
					latchAngle: 90,
					angle: 270,
					position: cc.v2( - 29.06, 145.07),
					type: "doubleLatch"
				},
				{
					width: 400,
					angle: 270,
					position: cc.v2(53.61, 407.13),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			79 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 240,
					angle: 0,
					position: cc.v2( - 124.8, 293.76),
					type: "wallVert"
				},
				{
					height: 260,
					angle: 0,
					position: cc.v2( - 80.64, -286.08),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 186.24, -211.2),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(182.4, -378.24),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 18.39, 196.64),
					type: "characterMain"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2( - 193.78, -350.29),
					type: "lava"
				},
				{
					angle: 0,
					position: cc.v2(189.19, 261.82),
					type: "circleRock"
				},
				{
					width: 400,
					angle: 0,
					position: cc.v2( - 259.35, 174.81),
					type: "singleLatch"
				},
				{
					width: 245,
					angle: 0,
					position: cc.v2( - 261.27, -253.35),
					type: "singleLatch"
				},
				{
					latchWidth: 330,
					moveRange: 350,
					latchAngle: 0,
					angle: 180,
					isFlip: !1,
					position: cc.v2(257.02, -411.73),
					type: "doubleLatch"
				},
				{
					width: 220,
					angle: 211,
					position: cc.v2(247.53, 184.41),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 270,
					position: cc.v2(120.81, 389.85),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2( - 206.33, 190.78),
					type: "chest"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			80 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 310,
					position: cc.v2( - 227.44, 95.98),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 48,
					position: cc.v2( - 229.36, 34.46),
					type: "wallHorz"
				},
				{
					height: 200,
					angle: 0,
					position: cc.v2( - 109.57, 159.55),
					type: "wallVert"
				},
				{
					height: 130,
					angle: 0,
					position: cc.v2(107.65, 136.49),
					type: "wallVert"
				},
				{
					width: 240,
					angle: 0,
					position: cc.v2( - .61, 72.91),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 167.24, -401.77),
					type: "characterEnemy"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 217.35, 65.63),
					type: "singleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 300,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(107.57, 208.47),
					type: "doubleLatch"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2(13.46, 309.5),
					type: "water"
				},
				{
					latchWidth: 380,
					moveRange: 100,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2( - 30.84, -425.9),
					type: "doubleLatch"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(175.1, 102.79),
					type: "lava"
				},
				{
					width: 560,
					angle: 168,
					position: cc.v2(263.23, 175.2),
					type: "singleLatch"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2(173.01, 309.5),
					type: "gold"
				},
				{
					width: 120,
					height: 100,
					angle: 0,
					position: cc.v2(23.9, -365.55),
					type: "platformBox"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(25.61, -306.72),
					type: "characterMain"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 217.06, 208.52),
					type: "lava"
				},
				{
					partCount: 2,
					angle: 0,
					position: cc.v2( - 51.74, 158.54),
					type: "lava"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(257.46, 67.55),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2( - 263.36, 121.11),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 265.28, 5.77),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 109.57, 71.13),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(105.73, 73.05),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(105.73, 211.46),
					type: "decorWallJoint"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			81 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 261.92, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 174.72, -157.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(182.4, -407.04),
					type: "characterEnemy"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 165.12, 245.76),
					type: "water"
				},
				{
					partCount: 8,
					angle: 0,
					position: cc.v2( - 197.62, 41.39),
					type: "lava"
				},
				{
					angle: 0,
					position: cc.v2( - 60.41, -406.34),
					type: "chest"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(64.17, 206.25),
					type: "characterMain"
				},
				{
					width: 100,
					height: 100,
					angle: 0,
					position: cc.v2(168.07, -14.66),
					type: "squareRock"
				},
				{
					width: 350,
					angle: 0,
					position: cc.v2( - 251.67, 201.69),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 180,
					position: cc.v2(253.29, 201.69),
					type: "singleLatch"
				},
				{
					width: 280,
					angle: 90,
					position: cc.v2( - 5.91, 199.77),
					type: "singleLatch"
				},
				{
					width: 280,
					angle: 23,
					position: cc.v2( - 257.43, -24.87),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 22,
					position: cc.v2( - 259.35, -218.79),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 179,
					position: cc.v2(257.13, -69.03),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			82 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 263.84, -3.84),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 250,
					angle: 0,
					position: cc.v2( - 127.58, -119.19),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(263.04, -7.68),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(132.48, 124.8),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(165.12, -401.28),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 155.52, -412.8),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					hasWeapon: !1,
					position: cc.v2( - 141.27, 125.6),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 165.12, -51.84),
					type: "sword"
				},
				{
					angle: 0,
					position: cc.v2(126.72, 354.44),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2(59.52, -377.18),
					type: "trapDropTrigger"
				},
				{
					width: 400,
					angle: 270,
					position: cc.v2( - 5.91, 393.69),
					type: "singleLatch"
				},
				{
					width: 710,
					angle: 0,
					position: cc.v2( - 242.07, 115.29),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 91,
					position: cc.v2( - 2.07, -424.23),
					type: "singleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 310,
					latchAngle: 0,
					angle: 91,
					position: cc.v2( - 247.95, -123.73),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			83 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 261.92, -5.85),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 250,
					angle: 0,
					position: cc.v2(129.32, -119.45),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(257.29, -5.85),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(159.32, 122.79),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 153.13, -106.65),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 155.52, -412.8),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 145.7, 136.12),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					hasWeapon: !1,
					position: cc.v2(127.13, -401.97),
					type: "characterMain"
				},
				{
					width: 400,
					angle: 270,
					position: cc.v2(15.18, 397.44),
					type: "singleLatch"
				},
				{
					width: 720,
					angle: 0,
					position: cc.v2( - 251.66, 115.03),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 91,
					position: cc.v2(28.6, -414.72),
					type: "singleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 300,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(252.43, -118.06),
					type: "doubleLatch"
				},
				{
					width: 350,
					angle: 0,
					position: cc.v2( - 251.33, -113.23),
					type: "singleLatch"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2(94.04, -60.09),
					type: "lava"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2(26.66, -113.23),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			84 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 300,
					angle: 180,
					position: cc.v2( - 100.83, -30.43),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 132.28, 205.14),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(155.29, 195.55),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(149.76, -207.36),
					type: "characterEnemy"
				},
				{
					angle: 0,
					position: cc.v2( - 58.31, -12.67),
					type: "trapJaw"
				},
				{
					width: 200,
					angle: 89,
					position: cc.v2( - 21.27, -425.73),
					type: "singleLatch"
				},
				{
					width: 710,
					angle: 0,
					position: cc.v2( - 251.33, 193.51),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 271,
					position: cc.v2( - .18, 404.4),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 159,
					position: cc.v2(249.04, -7.77),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(167.18, 62.51),
					type: "lava"
				},
				{
					width: 350,
					angle: 179,
					position: cc.v2(255.21, -216.87),
					type: "singleLatch"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2(113.28, -395.52),
					type: "water"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 156.63, -417.75),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(52.87, -410.18),
					type: "chest"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			85 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -3.84),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 213.98, 117.12),
					type: "wallHorz"
				},
				{
					width: 350,
					angle: 107,
					position: cc.v2( - 46.74, -271.19),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 62,
					position: cc.v2( - 219.75, 26.77),
					type: "wallHorz"
				},
				{
					width: 120,
					angle: 0,
					position: cc.v2( - 44.82, -111.63),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 40.97, 30.62),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 13.46, 126.87),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(184.54, 148.02),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 188.39, 144.17),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(169.17, -55.75),
					type: "characterEnemy"
				},
				{
					angle: 0,
					position: cc.v2(38.45, -372.08),
					type: "trapDropTrigger"
				},
				{
					angle: 0,
					position: cc.v2( - 155.71, 348.78),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2( - 60.23, -39.9),
					type: "bomb"
				},
				{
					partCount: 40,
					angle: 0,
					position: cc.v2( - 157.47, -272.06),
					type: "stone"
				},
				{
					width: 700,
					angle: 270,
					position: cc.v2(82.53, 405.88),
					type: "singleLatch"
				},
				{
					latchWidth: 140,
					moveRange: 120,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2( - .08, -112.56),
					type: "doubleLatch"
				},
				{
					width: 600,
					angle: 180,
					position: cc.v2(257.46, 111.76),
					type: "singleLatch"
				},
				{
					width: 285,
					angle: 200,
					position: cc.v2(267.08, -195.81),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 270,
					position: cc.v2( - 53.95, 405.88),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(175.55, -402.84),
					type: "characterMain"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(173.17, -147.11),
					type: "lava"
				},
				{
					width: 450,
					angle: 90,
					position: cc.v2(84.46, -430.34),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 180,
					position: cc.v2(261.31, -68.94),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2( - 259.51, -61.51),
					type: "decorWallJoint"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			86 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(163.4, -297.96),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(61.51, -53.83),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 178.78, -55.75),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(178.78, 201.84),
					type: "characterSnake"
				},
				{
					width: 140,
					angle: 0,
					position: cc.v2( - 18.05, -359.36),
					type: "dungeon"
				},
				{
					width: 200,
					height: 120,
					angle: 0,
					position: cc.v2(148.85, -355.94),
					type: "platformBox"
				},
				{
					width: 150,
					height: 120,
					angle: 0,
					position: cc.v2( - 177.94, -357.86),
					type: "platformBox"
				},
				{
					angle: 0,
					position: cc.v2(3.84, 253.75),
					type: "sword"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 176.24, 200.78),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 164.04, -295.57),
					type: "chest"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 253.87, -61.25),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 89,
					position: cc.v2(132.51, -55.48),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 89,
					position: cc.v2( - 78.94, -51.64),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 259.64, 192.5),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 89,
					position: cc.v2( - 82.79, 190.58),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 89,
					position: cc.v2(107.52, 186.73),
					type: "singleLatch"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(184.32, -12.56),
					type: "coldGas"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			87 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 182.62, 36.64),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2( - 9.61, 178.78),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(169.17, -21.15),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 184.54, -269.13),
					type: "characterSnake"
				},
				{
					width: 160,
					height: 120,
					angle: 0,
					position: cc.v2(170, -357.86),
					type: "platformBox"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(155.87, 266.19),
					type: "lava"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(177.47, -272.12),
					type: "characterMain"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2( - 78.82, -397.92),
					type: "water"
				},
				{
					angle: 0,
					position: cc.v2( - 185.18, -414.75),
					type: "chest"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2( - 30.76, -235.93),
					type: "coldGas"
				},
				{
					width: 800,
					angle: 28,
					position: cc.v2( - 209.72, 13.81),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 114,
					position: cc.v2( - 48.22, 102.2),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 111,
					position: cc.v2(117.13, 202.11),
					type: "singleLatch"
				},
				{
					width: 270,
					angle: 197,
					position: cc.v2(257.46, -24.72),
					type: "singleLatch"
				},
				{
					width: 500,
					angle: 0,
					position: cc.v2( - 257.72, -303.46),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 89,
					position: cc.v2( - 109.7, -301.54),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 89,
					position: cc.v2(86.38, -303.46),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 113,
					position: cc.v2(78.69, -74.7),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			88 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 261.92, -13.45),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2(103.2, 126.74),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 188.39, -365.24),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(151.86, 146.1),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(61.51, -363.32),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(136.49, -36.52),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 180.08, 143.11),
					type: "characterMain"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2( - 176.85, -137.89),
					type: "coldGas"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(198, -407.53),
					type: "characterPrincess"
				},
				{
					width: 400,
					height: 50,
					angle: 0,
					position: cc.v2( - 51.07, -392.47),
					type: "platformBox"
				},
				{
					angle: 0,
					position: cc.v2( - 149.94, -3.84),
					type: "sword"
				},
				{
					angle: 0,
					position: cc.v2( - 103.8, -339.38),
					type: "trapDropTrigger"
				},
				{
					angle: 0,
					position: cc.v2(142.25, 354.55),
					type: "trapDrop"
				},
				{
					width: 250,
					angle: 89,
					position: cc.v2( - 34.73, -372.67),
					type: "singleLatch"
				},
				{
					width: 720,
					angle: 0,
					position: cc.v2( - 253.87, -201.58),
					type: "singleLatch"
				},
				{
					width: 720,
					angle: 180,
					position: cc.v2(249.78, -43.95),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 250.03, 130.99),
					type: "singleLatch"
				},
				{
					width: 220,
					angle: 89,
					position: cc.v2( - 44.34, 129.06),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 89,
					position: cc.v2(138.28, -382.27),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			89 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 164,
					position: cc.v2(160.87, 103.67),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 151.86, -409.46),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(155.71, -109.57),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 205.55, -109.58),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 157.01, 262.29),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(159.72, 173.92),
					type: "lava"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(163.4, -409.46),
					type: "characterPrincess"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2( - 121.11, -378.7),
					type: "water"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 75,
					isFlip: !0,
					position: cc.v2(219.08, 93.15),
					type: "doubleLatch"
				},
				{
					width: 720,
					angle: 0,
					position: cc.v2( - 246.19, -118.92),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 89,
					position: cc.v2(9.48, -120.84),
					type: "singleLatch"
				},
				{
					width: 720,
					angle: 0,
					position: cc.v2( - 248.11, 252.09),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 89,
					position: cc.v2(11.4, -416.88),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			90 : {
				elementArr: [{
					width: 540,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 340,
					angle: 169,
					position: cc.v2( - 104.41, -401.91),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 17.91, -5.91),
					type: "wallHorz"
				},
				{
					height: 170,
					angle: 0,
					position: cc.v2(67.28, 207.61),
					type: "wallVert"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2(3.24, 126.74),
					type: "wallHorz"
				},
				{
					width: 300,
					angle: 9,
					position: cc.v2( - 69.81, 268.99),
					type: "wallHorz"
				},
				{
					height: 230,
					angle: 0,
					position: cc.v2( - 117.26, -111.5),
					type: "wallVert"
				},
				{
					width: 100,
					angle: 71,
					position: cc.v2(239.69, 188.25),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 296,
					position: cc.v2(241.61, 101.75),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(0, 140.33),
					type: "characterSnake"
				},
				{
					partCount: 40,
					angle: 0,
					position: cc.v2( - 138.41, 321.03),
					type: "water"
				},
				{
					partCount: 2,
					angle: 0,
					position: cc.v2(2.08, -358.56),
					type: "lava"
				},
				{
					angle: 0,
					position: cc.v2( - 14.1, 56.22),
					type: "bomb"
				},
				{
					partCount: 30,
					angle: 0,
					position: cc.v2(144.17, -276.3),
					type: "poisonGas"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 11.53, -213.38),
					type: "gold"
				},
				{
					width: 120,
					height: 50,
					angle: 0,
					position: cc.v2( - 189.48, -390.54),
					type: "platformBox"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 203.15, -308.64),
					type: "characterMain"
				},
				{
					latchWidth: 120,
					moveRange: 200,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 80.82, -2.99),
					type: "doubleLatch"
				},
				{
					width: 280,
					angle: 344,
					position: cc.v2( - 119.31, -216.96),
					type: "singleLatch"
				},
				{
					width: 600,
					angle: 90,
					position: cc.v2(69.08, -428.41),
					type: "singleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 550,
					latchAngle: 0,
					angle: 270,
					isFlip: !0,
					position: cc.v2( - 207.69, 400.7),
					type: "doubleLatch"
				},
				{
					width: 250,
					angle: 180,
					position: cc.v2(244.01, 136.75),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 90,
					position: cc.v2( - 119.31, -401.5),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2(67.28, 286.43),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 113.42, -15.38),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2( - 117.26, -219.15),
					type: "decorWallJoint"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			91 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 102.49, 124.81),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 138.41, 140.33),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(175.03, -67.36),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 155.71, -63.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(138.41, -301.81),
					type: "characterSnake"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(140.33, 175.45),
					type: "coldGas"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 147.4, -281.73),
					type: "characterMain"
				},
				{
					width: 150,
					height: 120,
					angle: 0,
					position: cc.v2( - 176.02, -361.71),
					type: "platformBox"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 18.05, -365.13),
					type: "dungeon"
				},
				{
					width: 200,
					height: 120,
					angle: 0,
					position: cc.v2(148.85, -363.63),
					type: "platformBox"
				},
				{
					angle: 0,
					position: cc.v2( - 138.41, 354.55),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2(55.99, -22.3),
					type: "trapDropTrigger"
				},
				{
					width: 720,
					angle: 0,
					position: cc.v2( - 251.96, -71),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 89,
					position: cc.v2( - 4.13, -67.23),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 89,
					position: cc.v2(44.09, 125.22),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 180,
					position: cc.v2(245.93, 125.22),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			92 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -434.14),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 187.07, 3.86),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2( - 1.93, 54),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(173.57, 106.07),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 160.07, -198.64),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(175.5, -196.71),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 183.12, 263.27),
					type: "characterMain"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(156.21, -405),
					type: "characterPrincess"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2( - 113.79, -366.89),
					type: "coldGas"
				},
				{
					angle: 0,
					position: cc.v2( - 32.79, -161.68),
					type: "trapDropTrigger"
				},
				{
					angle: 0,
					position: cc.v2(135, 356.79),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2( - 37.31, -404.91),
					type: "trapJaw"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 250.77, 261.09),
					type: "singleLatch"
				},
				{
					width: 740,
					angle: 15,
					position: cc.v2( - 246.92, -26.27),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 107,
					position: cc.v2(107.94, 70.16),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 107,
					position: cc.v2( - 61.91, 20.02),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 250.77, -213.34),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 90,
					position: cc.v2(88.66, -217.19),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2(52.01, -413.91),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			93 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 250,
					angle: 315,
					position: cc.v2( - 150.62, 324.33),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 170.88, -109.44),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 3.84, -236.16),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(203.52, 153.6),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 167.04, 190.08),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 178.56, -398.72),
					type: "characterMain"
				},
				{
					width: 550,
					angle: 33,
					position: cc.v2( - 226.71, 122.97),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2(39.43, 213.82),
					type: "bomb"
				},
				{
					width: 530,
					angle: 326,
					position: cc.v2( - 257.43, -101.67),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 30.58, -379.09),
					type: "lava"
				},
				{
					partCount: 60,
					angle: 0,
					position: cc.v2( - 49.92, 312.96),
					type: "water"
				},
				{
					width: 350,
					angle: 0,
					position: cc.v2(26.73, 142.17),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 90,
					position: cc.v2(68.97, -387.75),
					type: "singleLatch"
				},
				{
					latchWidth: 350,
					moveRange: 280,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 98.18, -432.85),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			94 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(211.2, -176.64),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(190.08, -341.76),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(69.12, -407.04),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 163.2, -192),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 192, -391.68),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(190.08, 144.64),
					type: "characterMain"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 51.99, 21.21),
					type: "singleLatch"
				},
				{
					width: 900,
					angle: 45,
					position: cc.v2( - 240.15, -53.67),
					type: "singleLatch"
				},
				{
					width: 900,
					angle: 135,
					position: cc.v2(272.49, -47.91),
					type: "singleLatch"
				},
				{
					width: 800,
					angle: 135,
					position: cc.v2(216.81, -387.75),
					type: "singleLatch"
				},
				{
					width: 900,
					angle: 45,
					position: cc.v2( - 188.31, -410.79),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 207.51, -191.91),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2(2.95, 83.26),
					type: "bomb"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2(26.88, 306.16),
					type: "poisonGas"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2(15.36, -110.48),
					type: "coldGas"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2( - 165.12, 157.44),
					type: "water"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			95 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 250.4, -7.68),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 35.42, -186.39),
					type: "wallHorz"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2(34.56, 332.16),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 24.96, -163.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 186.24, 297.6),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 59.2, 151.68),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 43.48, 10.43),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 26.88, 290.56),
					type: "characterMain"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 158.32, -351.03),
					type: "dungeon"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 8.56, -356.79),
					type: "dungeon"
				},
				{
					width: 190,
					height: 120,
					angle: 0,
					position: cc.v2(152.72, -359.12),
					type: "platformBox"
				},
				{
					width: 400,
					angle: 0,
					position: cc.v2( - 242.07, 138.33),
					type: "singleLatch"
				},
				{
					width: 450,
					angle: 90,
					position: cc.v2( - 119.19, 109.53),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 135,
					position: cc.v2(220.01, 202.08),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 0,
					position: cc.v2( - 245.91, 278.49),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 150,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(13.18, -189.01),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 92.31, -1.83),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(184.35, 316.52),
					type: "gold"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 219.13, 197.98),
					type: "coldGas"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			96 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(182.4, 147.84),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(199.68, -257.28),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 149.76, 13.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(190.08, 288.64),
					type: "characterMain"
				},
				{
					width: 250,
					height: 180,
					angle: 0,
					position: cc.v2( - 123.76, -322.64),
					type: "platformBox"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(126.57, 276.57),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2( - 37.37, 284.86),
					type: "chest"
				},
				{
					width: 400,
					angle: 0,
					position: cc.v2( - 251.67, 265.05),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2( - 117.27, 255.45),
					type: "singleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 120,
					latchAngle: 0,
					angle: 90,
					isFlip: !1,
					position: cc.v2( - 228.75, -246.61),
					type: "doubleLatch"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 195.7, 314.03),
					type: "lava"
				},
				{
					latchWidth: 220,
					moveRange: 280,
					latchAngle: 90,
					angle: 90,
					isFlip: !0,
					position: cc.v2( - 19.46, -277.33),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(118.89, 138.33),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(99.98, -375.25),
					type: "lava"
				},
				{
					width: 300,
					angle: 180,
					position: cc.v2( - 57.75, 11.61),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			97 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 173.66, 40.17),
					type: "wallHorz"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2( - 109.44, -26.88),
					type: "wallVert"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 43.1, -92.31),
					type: "wallHorz"
				},
				{
					height: 120,
					angle: 0,
					position: cc.v2(23.04, -42.24),
					type: "wallVert"
				},
				{
					height: 250,
					angle: 45,
					position: cc.v2(49.92, 320.64),
					type: "wallVert"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2( - 21.12, -345.6),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(203.52, 42.24),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 49.92, -53.76),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 192, 67.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(213.12, -190.08),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 186.24, -92.16),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(206.25, -396.64),
					type: "characterMain"
				},
				{
					width: 300,
					angle: 180,
					position: cc.v2(224.49, 26.97),
					type: "singleLatch"
				},
				{
					width: 100,
					height: 100,
					angle: 0,
					position: cc.v2( - 37.37, -65.08),
					type: "fakeBase"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2( - 205.3, 314.03),
					type: "stone"
				},
				{
					width: 700,
					angle: 180,
					position: cc.v2(239.85, -266.79),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 326,
					position: cc.v2( - 268.95, 326.49),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 225,
					position: cc.v2( - 61.59, 349.53),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 225,
					position: cc.v2(251.37, 355.29),
					type: "singleLatch"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2(119.04, 331.12),
					type: "coldGas"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 245.91, -111.27),
					type: "singleLatch"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2( - 157.3, -359.89),
					type: "lava"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			98 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 179.42, -61.59),
					type: "wallHorz"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2( - 113.28, -126.72),
					type: "wallVert"
				},
				{
					width: 180,
					angle: 0,
					position: cc.v2( - 31.58, -194.07),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 168.96, -34.56),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(203.52, -57.6),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 13.44, 145.92),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 186.24, -397.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 163.2, 152.32),
					type: "characterMain"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 10.48, -124.47),
					type: "dungeon"
				},
				{
					angle: 0,
					position: cc.v2( - 15.36, 345.6),
					type: "sword"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(174.72, -349.44),
					type: "gold"
				},
				{
					angle: 0,
					position: cc.v2(60.61, -51.63),
					type: "trapJaw"
				},
				{
					width: 450,
					angle: 180,
					position: cc.v2(220.65, 132.57),
					type: "singleLatch"
				},
				{
					latchWidth: 130,
					moveRange: 150,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 230.67, -64.21),
					type: "doubleLatch"
				},
				{
					width: 400,
					angle: 270,
					position: cc.v2( - 109.59, 397.53),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 253.59, 138.33),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 94.23, 297.69),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 253.59, -209.19),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 180,
					position: cc.v2(255.21, -80.55),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			99 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 250,
					angle: 57,
					position: cc.v2( - 17.28, -67.2),
					type: "wallVert"
				},
				{
					height: 180,
					angle: 0,
					position: cc.v2(82.56, -324.48),
					type: "wallVert"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2( - 136.32, 312.96),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(1.92, -403.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(7.68, 222.72),
					type: "characterSnake"
				},
				{
					partCount: 30,
					angle: 0,
					position: cc.v2( - 180.48, -360.96),
					type: "water"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 259.35, 26.97),
					type: "singleLatch"
				},
				{
					partCount: 3,
					angle: 0,
					position: cc.v2(167.18, -363.73),
					type: "lava"
				},
				{
					angle: 0,
					position: cc.v2( - 198.65, 104.38),
					type: "bomb"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(149.61, 280.41),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(213.93, 290.72),
					type: "characterMain"
				},
				{
					width: 350,
					angle: 36,
					position: cc.v2( - 121.11, 230.49),
					type: "singleLatch"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2( - 82.56, 326.4),
					type: "gold"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 265.11, 232.41),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 220.66, 292.91),
					type: "lava"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2( - 69.27, -418.47),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(17.13, 209.37),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			100 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(194.98, 266.73),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(211.2, 147.84),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 174.72, -23.04),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 186.24, -216.96),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(203.52, -399.36),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(190.08, 288.64),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(10.69, -13.23),
					type: "trapJaw"
				},
				{
					angle: 0,
					position: cc.v2( - 23.87, -402.99),
					type: "trapJaw"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(118.89, 138.33),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 240.15, -32.55),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 236.31, -226.47),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2( - 115.35, 240.09),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 250,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(249.33, 264.11),
					type: "doubleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 197.76, 293.76),
					type: "gold"
				},
				{
					width: 230,
					angle: 270,
					position: cc.v2( - 92.31, 384.09),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			101 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 250,
					angle: 45,
					position: cc.v2(172.8, 312.96),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 45,
					position: cc.v2(53.76, -384),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 315,
					position: cc.v2( - 9.6, -384),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(3.84, 291.84),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 151.68, 115.2),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 195.03, 225.44),
					type: "characterMain"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 249.75, 218.97),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(262.89, 36.57),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2(196.87, 102.46),
					type: "bomb"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2(161.28, -364.8),
					type: "water"
				},
				{
					partCount: 2,
					angle: 0,
					position: cc.v2( - 166.9, -361.81),
					type: "lava"
				},
				{
					width: 400,
					angle: 206,
					position: cc.v2(147.69, 341.85),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2(257.28, 232.32),
					type: "decorWallJoint"
				},
				{
					angle: 0,
					position: cc.v2(84.48, 395.52),
					type: "decorWallJoint"
				},
				{
					width: 400,
					angle: 206,
					position: cc.v2(228.33, 238.17),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 304,
					position: cc.v2( - 188.31, 366.81),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 130,
					position: cc.v2( - 9.75, 144.09),
					type: "singleLatch"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2(26.88, 218.88),
					type: "gold"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(72.96, 221.68),
					type: "coldGas"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 232.47, 111.45),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			102 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 250,
					angle: 150,
					position: cc.v2( - 154.46, -11.67),
					type: "wallHorz"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2(147.84, -0),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 205.44, 238.08),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 167.04, 61.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(201.6, 234.88),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 50.75, 242.13),
					type: "trapJaw"
				},
				{
					angle: 0,
					position: cc.v2( - 147.84, -163.96),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2(115.2, 287.14),
					type: "trapDropTrigger"
				},
				{
					angle: 0,
					position: cc.v2(66.37, -408.75),
					type: "trapJaw"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 132.48, -397.44),
					type: "characterPrincess"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 240.15, 226.65),
					type: "singleLatch"
				},
				{
					width: 450,
					angle: 270,
					position: cc.v2(49.77, 416.73),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 236.31, 51.93),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(282.09, -74.79),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			103 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(194.98, 266.73),
					type: "wallHorz"
				},
				{
					height: 200,
					angle: 90,
					position: cc.v2( - 155.52, 149.76),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2( - 113.28, 337.92),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 117.12, 161.28),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(190.08, 288.64),
					type: "characterMain"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2( - 145.78, -357.97),
					type: "lava"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2(136.32, -379.28),
					type: "coldGas"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 188.16, 291.84),
					type: "characterPrincess"
				},
				{
					angle: 0,
					position: cc.v2(206.53, 142.29),
					type: "trapJaw"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(280.05, 266.03),
					type: "doubleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 280,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 261.38, 146.99),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 328,
					position: cc.v2( - 140.31, 76.89),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 212,
					position: cc.v2(247.53, 17.37),
					type: "singleLatch"
				},
				{
					width: 230,
					angle: 328,
					position: cc.v2( - 159.51, -59.43),
					type: "singleLatch"
				},
				{
					width: 450,
					angle: 206,
					position: cc.v2(262.89, -193.83),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2( - 105.75, 282.33),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2(92.01, 268.89),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2( - 17.43, -470.31),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(255.21, 128.73),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			104 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 200.54, 218.73),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(102.82, 218.73),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2(193.06, -2.07),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 46.94, 216.81),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 201.6, 232.32),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(103.68, 226.56),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(190.08, 13.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 178.56, -92.16),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(213.93, -408.15),
					type: "characterMain"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2( - 211.2, -196.88),
					type: "coldGas"
				},
				{
					angle: 0,
					position: cc.v2(104.77, -410.67),
					type: "trapJaw"
				},
				{
					angle: 0,
					position: cc.v2(45.25, -88.11),
					type: "trapJaw"
				},
				{
					angle: 0,
					position: cc.v2( - 50.75, 232.53),
					type: "trapJaw"
				},
				{
					latchWidth: 150,
					moveRange: 700,
					latchAngle: 0,
					angle: 270,
					isFlip: !0,
					position: cc.v2( - 257.55, 400.43),
					type: "doubleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 247.83, -107.43),
					type: "singleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 200,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(270.46, 175.79),
					type: "doubleLatch"
				},
				{
					width: 700,
					angle: 90,
					position: cc.v2( - 65.43, -451.11),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2( - 194.81, 102.46),
					type: "chest"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 251.67, 86.49),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			105 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(1.06, 403.05),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2(109.44, 337.92),
					type: "wallVert"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2(4.9, -146.07),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(199.68, -401.28),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 7.68, -128.64),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 192, 99.84),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(26.88, 280.96),
					type: "characterMain"
				},
				{
					latchWidth: 200,
					moveRange: 300,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(103.42, 64.43),
					type: "doubleLatch"
				},
				{
					width: 500,
					angle: 0,
					position: cc.v2( - 251.67, 88.41),
					type: "singleLatch"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 1.78, 171.95),
					type: "lava"
				},
				{
					width: 400,
					angle: 180,
					position: cc.v2(234.09, 272.73),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 225,
					position: cc.v2( - 76.95, 353.37),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 193.92, 312.96),
					type: "water"
				},
				{
					partCount: 15,
					angle: 0,
					position: cc.v2(170.88, 320.64),
					type: "gold"
				},
				{
					latchWidth: 100,
					moveRange: 150,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(53.5, 1.07),
					type: "doubleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 300,
					latchAngle: 90,
					angle: 180,
					position: cc.v2(91.89, -213.97),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			106 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 350,
					angle: 0,
					position: cc.v2( - 77.66, 95.85),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 57.6, 253.44),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 188.16, -132.48),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(186.24, -410.88),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 200.79, 110.25),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(26.05, 111.57),
					type: "trapJaw"
				},
				{
					angle: 0,
					position: cc.v2(27.97, -136.11),
					type: "trapJaw"
				},
				{
					angle: 0,
					position: cc.v2(12.61, -406.83),
					type: "trapJaw"
				},
				{
					latchWidth: 150,
					moveRange: 700,
					latchAngle: 0,
					angle: 270,
					isFlip: !0,
					position: cc.v2( - 249.87, 406.19),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(15.21, 243.93),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 242.07, -145.83),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 180,
					position: cc.v2(241.77, 105.69),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 180,
					latchAngle: 0,
					angle: 0,
					isFlip: !0,
					position: cc.v2( - 257.54, 97.07),
					type: "doubleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 500,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(264.69, 49.07),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			107 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 190.94, 1.77),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(37.54, 3.69),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(218.02, 259.05),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 165.12, 247.68),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 188.16, 23.04),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(51.84, 13.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 176.64, -157.44),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 164.31, -291.03),
					type: "characterMain"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(156.56, -351.03),
					type: "dungeon"
				},
				{
					width: 300,
					height: 120,
					angle: 0,
					position: cc.v2( - 116.08, -353.36),
					type: "platformBox"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(213.12, 278.4),
					type: "characterPrincess"
				},
				{
					angle: 0,
					position: cc.v2(4.93, -151.47),
					type: "trapJaw"
				},
				{
					latchWidth: 150,
					moveRange: 700,
					latchAngle: 0,
					angle: 270,
					isFlip: !0,
					position: cc.v2( - 270.99, 191.15),
					type: "doubleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 232.47, -166.95),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 240.15, 243.93),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 230,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(268.53, 398.51),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			108 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 190.94, 1.77),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(93.22, -11.67),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(194.98, 232.17),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 188.16, 23.04),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(94.08, 15.36),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 176.64, -157.44),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(29.61, -296.79),
					type: "characterMain"
				},
				{
					width: 350,
					height: 120,
					angle: 0,
					position: cc.v2(74, -359.12),
					type: "platformBox"
				},
				{
					angle: 0,
					position: cc.v2(164.29, -161.07),
					type: "trapJaw"
				},
				{
					latchWidth: 150,
					moveRange: 200,
					latchAngle: 0,
					angle: 270,
					isFlip: !0,
					position: cc.v2( - 247.95, 175.79),
					type: "doubleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 232.47, -166.95),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 120,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(253.17, 344.75),
					type: "doubleLatch"
				},
				{
					angle: 0,
					position: cc.v2(198.79, 282.94),
					type: "circleRock"
				},
				{
					width: 300,
					angle: 225,
					position: cc.v2( - 92.31, 345.69),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 213.12, 316.8),
					type: "gold"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 186.24, -367.76),
					type: "poisonGas"
				},
				{
					latchWidth: 150,
					moveRange: 150,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(176.37, 177.71),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			109 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(194.98, 232.17),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 31.58, -247.83),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 195.03, -408.15),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 48.83, 117.33),
					type: "trapJaw"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 242.07, 109.53),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(201.6, 253.44),
					type: "characterPrincess"
				},
				{
					latchWidth: 200,
					moveRange: 300,
					latchAngle: 0,
					angle: 270,
					isFlip: !0,
					position: cc.v2( - 198.02, 371.63),
					type: "doubleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(266.61, 375.47),
					type: "doubleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 250,
					latchAngle: 90,
					angle: 90,
					isFlip: !1,
					position: cc.v2(28.54, -114.13),
					type: "doubleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 200,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(253.17, 56.75),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2(20.97, -405.03),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(119.04, -365.84),
					type: "poisonGas"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 121.23, -250.45),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			110 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 300,
					angle: 0,
					position: cc.v2( - 49.92, 240),
					type: "wallVert"
				},
				{
					height: 300,
					angle: 0,
					position: cc.v2(120.96, 241.92),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(32.64, -255.36),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(42.24, 257.28),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(49.92, -140.16),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(51.84, -26.88),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(2.73, -410.07),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(17.28, 152.56),
					type: "coldGas"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 247.83, 243.93),
					type: "singleLatch"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 55.83, 90.33),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 15.51, -30.63),
					type: "singleLatch"
				},
				{
					latchWidth: 250,
					moveRange: 300,
					latchAngle: 90,
					angle: 90,
					isFlip: !0,
					position: cc.v2( - 15.62, -279.25),
					type: "doubleLatch"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(168.96, 302.32),
					type: "coldGas"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2( - 172.8, 295.68),
					type: "gold"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 184.32, 298.48),
					type: "coldGas"
				},
				{
					latchWidth: 250,
					moveRange: 300,
					latchAngle: 90,
					angle: 270,
					position: cc.v2( - 15.63, -154.45),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			111 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 250,
					angle: 0,
					position: cc.v2( - 106.46, 9.45),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 78.72, 26.88),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(157.44, -103.68),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(163.2, -261.12),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 170.07, -411.99),
					type: "characterMain"
				},
				{
					width: 400,
					angle: 45,
					position: cc.v2( - 238.23, 167.13),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 195.84, 305.28),
					type: "gold"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 182.4, 302.32),
					type: "coldGas"
				},
				{
					latchWidth: 150,
					moveRange: 300,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 251.78, 6.83),
					type: "doubleLatch"
				},
				{
					width: 350,
					angle: 180,
					position: cc.v2(245.61, -130.47),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 135,
					position: cc.v2(247.53, 138.33),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(174.72, 294.64),
					type: "poisonGas"
				},
				{
					width: 400,
					angle: 180,
					position: cc.v2(268.65, -266.79),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			112 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 250,
					angle: 0,
					position: cc.v2( - 104.54, 17.13),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2( - 174.72, -222.72),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(19.2, -165.12),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(186.24, 184.32),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 150.87, -400.47),
					type: "characterMain"
				},
				{
					width: 400,
					angle: 28,
					position: cc.v2( - 265.11, 170.97),
					type: "singleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 330,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 265.22, 12.59),
					type: "doubleLatch"
				},
				{
					width: 700,
					angle: 197,
					position: cc.v2(211.05, -122.79),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 135,
					position: cc.v2(247.53, 30.81),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 135,
					position: cc.v2( - 5.91, -222.63),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 130.56, 270.72),
					type: "characterPrincess"
				},
				{
					latchWidth: 100,
					moveRange: 300,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 240.27, -430.93),
					type: "doubleLatch"
				},
				{
					angle: 0,
					position: cc.v2( - 125.69, 69.82),
					type: "circleRock"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			113 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2( - 90.24, 9.6),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2( - 105.6, -359.04),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 184.32, 240),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(213.12, -397.44),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(185.13, 252.33),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 203.38, -379.09),
					type: "lava"
				},
				{
					angle: 0,
					position: cc.v2(72.13, -408.75),
					type: "trapJaw"
				},
				{
					latchWidth: 180,
					moveRange: 400,
					latchAngle: 90,
					angle: 90,
					position: cc.v2( - 48.27, -75.73),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(141.93, 228.57),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(251.25, 72.11),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 261.27, 218.97),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			114 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -1.92),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - .86, 272.49),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(172.8, 241.92),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(215.04, -395.52),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 193.92, 184.32),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 1.11, 290.73),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(72.13, -408.75),
					type: "trapJaw"
				},
				{
					latchWidth: 200,
					moveRange: 400,
					latchAngle: 90,
					angle: 90,
					position: cc.v2( - 48.27, -75.73),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(141.93, 228.57),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(251.25, 72.11),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 249.75, 172.89),
					type: "singleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 186.24, -354.32),
					type: "coldGas"
				},
				{
					width: 250,
					angle: 90,
					position: cc.v2( - 69.27, -418.47),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(57.33, 404.27),
					type: "doubleLatch"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2( - 201.6, -362.88),
					type: "gold"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			115 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(254.24, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2(113.28, -372.48),
					type: "wallVert"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(194.98, 251.37),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 198.62, 264.81),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "left",
					position: cc.v2(188.16, 276.48),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(26.88, -405.12),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(56.49, 46.89),
					type: "characterMain"
				},
				{
					latchWidth: 180,
					moveRange: 200,
					latchAngle: 90,
					angle: 225,
					position: cc.v2( - 65.54, 95.15),
					type: "doubleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 250,
					latchAngle: 90,
					angle: 315,
					position: cc.v2(86.14, -123.73),
					type: "doubleLatch"
				},
				{
					latchWidth: 130,
					moveRange: 170,
					latchAngle: 90,
					angle: 135,
					position: cc.v2(170.62, 97.07),
					type: "doubleLatch"
				},
				{
					width: 150,
					angle: 90,
					position: cc.v2( - 82.71, -416.55),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 150,
					latchAngle: 0,
					angle: 270,
					isFlip: !0,
					position: cc.v2( - 242.19, 396.59),
					type: "doubleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 150,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(253.17, 406.19),
					type: "doubleLatch"
				},
				{
					angle: 0,
					position: cc.v2( - 189.05, 329.02),
					type: "circleRock"
				},
				{
					width: 200,
					angle: 45,
					position: cc.v2(30.57, 270.81),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 135,
					position: cc.v2(15.21, 268.89),
					type: "singleLatch"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2(3.84, 347.52),
					type: "water"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(190.22, -371.41),
					type: "lava"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			116 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -1.92),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(261.92, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 189.02, 76.65),
					type: "wallHorz"
				},
				{
					width: 300,
					angle: 0,
					position: cc.v2( - 91.1, -242.07),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 197.76, 184.32),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 176.64, -211.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(203.52, -176.64),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 42.24, 188.16),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(188.16, -405.12),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 193.11, -398.55),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 142.08, 339.08),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2( - 193.92, 6.82),
					type: "trapDropTrigger"
				},
				{
					latchWidth: 200,
					moveRange: 300,
					latchAngle: 90,
					angle: 90,
					isFlip: !0,
					position: cc.v2(43.9, -18.13),
					type: "doubleLatch"
				},
				{
					width: 400,
					angle: 0,
					position: cc.v2( - 257.43, 174.81),
					type: "singleLatch"
				},
				{
					width: 150,
					angle: 180,
					position: cc.v2(264.81, -189.99),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2(68.97, -414.63),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2(208.39, 37.18),
					type: "circleRock"
				},
				{
					latchWidth: 200,
					moveRange: 400,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 251.78, -240.85),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			117 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -1.92),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(194.98, 247.53),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 165.12, 199.68),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 174.72, -395.52),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(195.84, 261.12),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 187.35, -8.79),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(56.77, -401.07),
					type: "trapJaw"
				},
				{
					angle: 0,
					position: cc.v2(188.16, -373.34),
					type: "trapDropTrigger"
				},
				{
					angle: 0,
					position: cc.v2( - 142.08, 346.76),
					type: "trapDrop"
				},
				{
					latchWidth: 200,
					moveRange: 400,
					latchAngle: 90,
					angle: 90,
					position: cc.v2( - 48.27, -75.73),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 255.51, -3.75),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 300,
					latchAngle: 0,
					angle: 270,
					isFlip: !0,
					position: cc.v2( - 249.86, 143.15),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2( - 105.75, 197.85),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 250,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(253.17, 402.35),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			118 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -1.92),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(10.66, 259.05),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(46.08, 46.08),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 157.44, 107.52),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(165.93, -162.39),
					type: "characterMain"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(5.61, 42.33),
					type: "singleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 400,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(243.57, -427.09),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(132.33, -168.87),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(88.17, 190.17),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2(121.99, 242.62),
					type: "circleRock"
				},
				{
					angle: 0,
					position: cc.v2(6.79, 329.02),
					type: "bomb"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 270,
					isFlip: !0,
					position: cc.v2( - 55.94, 400.43),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 247.83, 99.93),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 270,
					isFlip: !0,
					position: cc.v2( - 228.74, 225.71),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			119 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -1.92),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 41.18, 76.65),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(182.4, 134.4),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 92.16, -115.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(176.64, -397.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 43.35, 87.21),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 205.44, -71.9),
					type: "trapDropTrigger"
				},
				{
					angle: 0,
					position: cc.v2(153.6, 293),
					type: "trapDrop"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2(130.41, 121.05),
					type: "singleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 245.91, -138.15),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(26.61, 210.35),
					type: "doubleLatch"
				},
				{
					angle: 0,
					position: cc.v2(45.19, -412.1),
					type: "chest"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			120 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -1.92),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(200.74, 22.89),
					type: "wallHorz"
				},
				{
					width: 140,
					angle: 62,
					position: cc.v2(97.06, -228.63),
					type: "wallHorz"
				},
				{
					height: 140,
					angle: 38,
					position: cc.v2( - 42.24, -220.8),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2( - 84.48, 343.68),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2(63.36, 343.68),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 193.92, 165.12),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 197.76, -178.56),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(207.36, -192),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 86.4, -410.88),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 1.11, 290.73),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(198.79, 90.94),
					type: "bomb"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(13.58, -131.41),
					type: "lava"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 240.15, 149.85),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(258.93, 168.11),
					type: "doubleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 220.95, -199.59),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 65.43, 278.49),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			121 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -1.92),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 140,
					angle: 62,
					position: cc.v2(95.14, -203.67),
					type: "wallHorz"
				},
				{
					height: 140,
					angle: 38,
					position: cc.v2( - 67.2, -205.44),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2( - 84.48, 343.68),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2(63.36, 339.84),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 197.76, -178.56),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(203.52, 36.48),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(190.08, -190.08),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 1.11, 290.73),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(5.9, -150.61),
					type: "lava"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 220.95, -199.59),
					type: "singleLatch"
				},
				{
					width: 450,
					angle: 0,
					position: cc.v2( - 48.15, 282.33),
					type: "singleLatch"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2(184.32, 327.28),
					type: "coldGas"
				},
				{
					latchWidth: 150,
					moveRange: 250,
					latchAngle: 90,
					angle: 90,
					isFlip: !0,
					position: cc.v2(84.21, 18.35),
					type: "doubleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 300,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(262.77, -427.09),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			122 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -1.92),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2( - 84.48, 343.68),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2(63.36, 343.68),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(1.92, 145.92),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(182.4, 15.36),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 186.24, -144),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 1.11, 290.73),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 12.35, -147.63),
					type: "trapJaw"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 65.43, 119.13),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 0,
					position: cc.v2( - 51.99, 278.49),
					type: "singleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 300,
					latchAngle: 90,
					angle: 90,
					isFlip: !0,
					position: cc.v2(91.89, -.85),
					type: "doubleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 550,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(266.61, -430.93),
					type: "doubleLatch"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(67.2, -338.96),
					type: "poisonGas"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2(134.4, 324.48),
					type: "gold"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 234.39, -163.11),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			123 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -1.92),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(200.74, 22.89),
					type: "wallHorz"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2( - 84.48, 343.68),
					type: "wallVert"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2(63.36, 343.68),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(184.32, 46.08),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(213.12, -186.24),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 186.24, 138.24),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(184.32, 295.68),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 1.11, 290.73),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2(8.77, -199.47),
					type: "trapJaw"
				},
				{
					angle: 0,
					position: cc.v2(8.77, -401.07),
					type: "trapJaw"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 240.15, 126.81),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 350,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(262.77, 200.75),
					type: "doubleLatch"
				},
				{
					width: 700,
					angle: 0,
					position: cc.v2( - 220.95, -199.59),
					type: "singleLatch"
				},
				{
					width: 450,
					angle: 0,
					position: cc.v2( - 65.43, 278.49),
					type: "singleLatch"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 205.44, -407.04),
					type: "characterPrincess"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			124 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -1.92),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(261.92, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 146.78, 134.25),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 190.08, 276.48),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 176.64, -211.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(190.08, 234.24),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 36.48, 288),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(188.16, -405.12),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 193.11, -398.55),
					type: "characterMain"
				},
				{
					latchWidth: 100,
					moveRange: 250,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(245.49, -141.01),
					type: "doubleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 300,
					latchAngle: 90,
					angle: 90,
					isFlip: !0,
					position: cc.v2(47.74, -12.37),
					type: "doubleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 250,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 230.67, 131.63),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(266.73, -255.27),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2( - 142.08, 199.68),
					type: "sword"
				},
				{
					width: 400,
					angle: 0,
					position: cc.v2( - 238.23, 272.73),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 240.15, -220.71),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(253.29, 222.81),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2(111.21, -412.71),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			125 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -1.92),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(261.92, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2(196.9, 230.25),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 179.42, -236.31),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 176.64, -216.96),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(190.08, 245.76),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(199.68, 117.12),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(188.16, -405.12),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 186.24, -11.52),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 179.67, -421.59),
					type: "characterMain"
				},
				{
					partCount: 5,
					angle: 0,
					position: cc.v2( - 199.68, 300.4),
					type: "coldGas"
				},
				{
					angle: 0,
					position: cc.v2(147.84, -43),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2( - 51.84, 33.7),
					type: "trapDropTrigger"
				},
				{
					latchWidth: 200,
					moveRange: 300,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(116.85, -425.17),
					type: "doubleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 300,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(262.78, 225.71),
					type: "doubleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 250,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 257.55, -231.25),
					type: "doubleLatch"
				},
				{
					width: 400,
					angle: 45,
					position: cc.v2( - 228.63, 172.89),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 0,
					position: cc.v2( - 232.47, -26.79),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 90,
					angle: 90,
					isFlip: !0,
					position: cc.v2(128.38, 104.75),
					type: "doubleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			126 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -1.92),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(261.92, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 100,
					angle: 0,
					position: cc.v2( - 183.26, 230.25),
					type: "wallHorz"
				},
				{
					height: 150,
					angle: 0,
					position: cc.v2(55.68, -349.44),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(184.32, 132.48),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(203.52, -405.12),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 167.04, 238.08),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 193.11, -398.55),
					type: "characterMain"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 32.5, -356.05),
					type: "lava"
				},
				{
					angle: 0,
					position: cc.v2(155.52, 341),
					type: "trapDrop"
				},
				{
					angle: 0,
					position: cc.v2( - 28.8, 185.38),
					type: "trapDropTrigger"
				},
				{
					latchWidth: 100,
					moveRange: 250,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(270.45, -142.93),
					type: "doubleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 300,
					latchAngle: 90,
					angle: 90,
					isFlip: !0,
					position: cc.v2(99.58, -45.01),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(266.73, -255.27),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(249.45, 98.01),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2( - 107.67, -416.55),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 150,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 246.03, 229.55),
					type: "doubleLatch"
				},
				{
					width: 450,
					angle: 0,
					position: cc.v2( - 293.91, 115.29),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			127 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 260, -3.84),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(260, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - .86, -7.83),
					type: "wallHorz"
				},
				{
					height: 100,
					angle: 0,
					position: cc.v2( - 15.36, -360.96),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(180.48, 130.56),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 13.44, 13.44),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 1.11, 288.81),
					type: "characterMain"
				},
				{
					angle: 0,
					position: cc.v2( - 169.79, -122.67),
					type: "trapJaw"
				},
				{
					angle: 0,
					position: cc.v2( - 164.03, -251.31),
					type: "trapJaw"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(59.37, 286.17),
					type: "singleLatch"
				},
				{
					width: 350,
					angle: 0,
					position: cc.v2( - 253.59, -136.23),
					type: "singleLatch"
				},
				{
					width: 250,
					angle: 180,
					position: cc.v2(280.17, 122.97),
					type: "singleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 90,
					isFlip: !0,
					position: cc.v2(82.3, -6.61),
					type: "doubleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(266.61, 244.91),
					type: "doubleLatch"
				},
				{
					angle: 0,
					position: cc.v2( - 198.65, -400.58),
					type: "chest"
				},
				{
					width: 350,
					angle: 0,
					position: cc.v2( - 247.83, -270.63),
					type: "singleLatch"
				},
				{
					partCount: 20,
					angle: 0,
					position: cc.v2(117.26, -382.93),
					type: "lava"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			128 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -1.92),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(261.92, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 150,
					angle: 0,
					position: cc.v2( - 2.78, 120.81),
					type: "wallHorz"
				},
				{
					height: 200,
					angle: 0,
					position: cc.v2(36.48, -326.4),
					type: "wallVert"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 10.71, 290.73),
					type: "characterMain"
				},
				{
					latchWidth: 200,
					moveRange: 250,
					latchAngle: 90,
					angle: 270,
					position: cc.v2(30.45, -229.33),
					type: "doubleLatch"
				},
				{
					latchWidth: 200,
					moveRange: 300,
					latchAngle: 90,
					angle: 90,
					isFlip: !0,
					position: cc.v2(40.06, -39.25),
					type: "doubleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 200,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 73.23, 118.19),
					type: "doubleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(63.21, 282.33),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2(193.03, -404.42),
					type: "chest"
				},
				{
					partCount: 10,
					angle: 0,
					position: cc.v2( - 140.16, -381.2),
					type: "poisonGas"
				},
				{
					latchWidth: 100,
					moveRange: 250,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(266.61, 77.87),
					type: "doubleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 350,
					latchAngle: 0,
					angle: 270,
					isFlip: !0,
					position: cc.v2( - 249.87, -75.73),
					type: "doubleLatch"
				},
				{
					width: 300,
					angle: 180,
					position: cc.v2(237.93, -278.31),
					type: "singleLatch"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			},
			129 : {
				elementArr: [{
					width: 520,
					angle: 0,
					position: cc.v2(8.74, 404.97),
					type: "wallHorz"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2( - 254.24, -1.92),
					type: "wallVert"
				},
				{
					height: 840,
					angle: 0,
					position: cc.v2(261.92, -5.76),
					type: "wallVert"
				},
				{
					width: 550,
					angle: 0,
					position: cc.v2( - .86, -425.27),
					type: "wallHorz"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 146.78, 134.25),
					type: "wallHorz"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 190.08, 276.48),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 176.64, -211.2),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(190.08, 234.24),
					type: "characterEnemy"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(147.84, -9.6),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2(101.76, -280.32),
					type: "characterSnake"
				},
				{
					angle: 0,
					turnDirection: "right",
					position: cc.v2( - 193.11, -398.55),
					type: "characterMain"
				},
				{
					latchWidth: 100,
					moveRange: 250,
					latchAngle: 0,
					angle: 270,
					position: cc.v2(260.85, -156.37),
					type: "doubleLatch"
				},
				{
					latchWidth: 150,
					moveRange: 300,
					latchAngle: 90,
					angle: 90,
					isFlip: !0,
					position: cc.v2(47.74, -12.37),
					type: "doubleLatch"
				},
				{
					latchWidth: 100,
					moveRange: 250,
					latchAngle: 0,
					angle: 90,
					position: cc.v2( - 230.67, 131.63),
					type: "doubleLatch"
				},
				{
					width: 400,
					angle: 180,
					position: cc.v2(262.89, -285.99),
					type: "singleLatch"
				},
				{
					width: 400,
					angle: 0,
					position: cc.v2( - 238.23, 272.73),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 0,
					position: cc.v2( - 240.15, -220.71),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 180,
					position: cc.v2(253.29, 222.81),
					type: "singleLatch"
				},
				{
					width: 200,
					angle: 90,
					position: cc.v2( - 73.11, -397.35),
					type: "singleLatch"
				},
				{
					angle: 0,
					position: cc.v2( - 156.41, 156.22),
					type: "chest"
				},
				{
					type: "decorBottomWall",
					position: cc.v2(0, -438)
				},
				{
					type: "decorCatEar",
					position: cc.v2( - 200, 456),
					scaleX: -1
				},
				{
					type: "decorCatEar",
					position: cc.v2(200, 456)
				}],
				backgroundMaskPointArr: [cc.v2(250, -425), cc.v2(250, 410), cc.v2( - 250, 410), cc.v2( - 250, -425)]
			}
		},
		cc._RF.pop()
	},
	{
		"./all_modules": "all_modules"
	}],
	level_edit_code: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "56ba7PVYDpNyKUD1DiiS5dj", "level_edit_code");
		var n = this &amp;&amp; this.__assign ||
		function() {
			return (n = Object.assign ||
			function(e) {
				for (var t, i = 1,
				n = arguments.length; i &lt; n; i++) for (var o in t = arguments[i]) Object.prototype.hasOwnProperty.call(t, o) &amp;&amp; (e[o] = t[o]);
				return e
			}).apply(this, arguments)
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.levelEditCode = void 0;
		var o = e("../all_modules");
		o._,
		i.levelEditCode = {
			init: function() {
				var e = this;
				o.utils.addButtonComp(cc.find("Canvas/level_edit_code/close"),
				function() {
					return o.ui.hideLayer("level_edit_code")
				}),
				o.utils.addButtonComp(cc.find("Canvas/layer_edit_level/but_get_code"),
				function() {
					e.getCurrentMapCode(),
					o.ui.showLayer("level_edit_code")
				})
			},
			getCurrentMapCode: function() {
				var e = o.gameFlow.currentLevelIndex + " : {\nelementArr: [\n";
				return cc.find("Canvas/play_area/map").children.map(function(t) {
					if ("elem_char_move_target" != t.name &amp;&amp; "decorBottomWall" != t.elemCode &amp;&amp; "decorCatEar" != t.elemCode) {
						o.elementPropsEdit.onSelect(t),
						o.elementPropsEdit.updateSelectedElem();
						var i = n({},
						t.orgParams);
						i.type = t.elemCode;
						var c = i.position || t.position;
						delete i.position,
						e += JSON.stringify(i).replace('"type"', "position: cc.v2(" + c.x.toFixed(2) + ", " + c.y.toFixed(2) + "), type") + ",\n"
					}
				}),
				e += "\n                // decoration =====================\n                { type: 'decorBottomWall', position: cc.v2(0, -438) },\n                { type: 'decorCatEar', position: cc.v2(-200, 456), scaleX: -1 },\n                { type: 'decorCatEar', position: cc.v2(200, 456) },\n            ],\n\n            backgroundMaskPointArr: [\n                cc.v2(250, -425),\n                cc.v2(250, 410),\n                cc.v2(-250, 410),\n                cc.v2(-250, -425),\n            ],\n        },\n        ",
				cc.find("Canvas/level_edit_code/EditBox").getComponent(cc.EditBox).string = e,
				e
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	level_manager: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "55311NAAUVL/bn1oqJPaLsi", "level_manager"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.levelManager = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.levelManager = {
			init: function() {
				for (var e = cc.find("Canvas/layer_level_list/ScrollView/but_level_sample"), t = cc.find("Canvas/layer_level_list/ScrollView/view/content"), i = o.max.apply(o, Object.keys(n.levelConfigList).map(function(e) {
					return parseInt(e)
				})), c = function(i) {
					var o = n.utils.copyNodeTo(e, t);
					o.active = !0,
					n.utils.addButtonComp(o,
					function() {
						n.gameFlow.startNewGame(i),
						n.ui.hideLayer("layer_level_list")
					}),
					n.utils.setLabelText(o.getChildByName("label"), "" + i)
				},
				a = 1; a &lt;= i; a++) c(a);
				n.utils.addButtonComp(cc.find("Canvas/play_area/but_select_level"),
				function() {
					n.ui.showLayer("layer_level_list")
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_level_list/close"),
				function() {
					n.ui.hideLayer("layer_level_list")
				})
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	load_optimize: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "20fe9BzN09LioBtbA+F4FpU", "load_optimize"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.loadOptimize = void 0;
		var n = e("../all_modules");
		n._,
		i.loadOptimize = {
			init: function() {},
			initReal: function() {
				var e = cc.find("Canvas/play_area/btn_pause"),
				t = e.getComponent(cc.Sprite).spriteFrame;
				e.opacity = 0,
				e.active = !0,
				["Canvas/messages", "Canvas/shares", "Canvas/bg/full_bg", "Canvas/play_area/btn_pause", "Canvas/play_area/botBar/get_block_7", "Canvas/play_area/botBar/remove_new_item"].map(function(e) {
					var i = cc.find(e);
					i.opacity = 0,
					n.utils.waitToRun(function() {
						i.active = !0,
						i.runAction(cc.fadeIn(.5))
					},
					"textureLoaded()", t)
				});
				var i = cc.find("Canvas/layer_share_iq"),
				o = cc.find("Canvas/shares_iq_image");
				i.scale = 0,
				i.active = !0,
				o.active = !0,
				setTimeout(function() {
					i.active = !1,
					setTimeout(function() {
						i.scale = 1
					},
					1),
					o.active = !1
				},
				100)
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	localize_analytic: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "cd9fd2XmatIE7tRj6BwsGCr", "localize_analytic"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.run = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.run = function() {
			var e = "";
			cc.find("Canvas").children.map(function(t) {
				return e += t.name.startsWith("popup_") || t.name.startsWith("screen_") ? "": "\n/" + t.name
			}),
			o.log("localizeAnalytic :: list other UI "),
			o.log(e),
			setTimeout(function() {
				var e = cc.find("Canvas").getComponentsInChildren(cc.Label).filter(function(e) {
					return ! (e.string.match(/^[0-9+\s.,kKmMbB\-\/:$%]+$/g) || n.utils.getNodePath(e.node).includes("view/content") || e.node.name.includes("username") || e.node.name.includes("user_name"))
				});
				o.log("localizeAnalytic :: count all node that has label comp WITH TEXT - NOT NUMBER " + e.length + " \n            \n" + e.map(function(e) {
					return n.utils.getNodePath(e.node)
				}).join("\n") + " ")
			},
			5e3)
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	login: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "b1f84p1nD9KR6dZ++h8+QnU", "login"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.login = void 0;
		var n = e("../all_modules"),
		o = n._,
		c = ["LoginTime", "IsOldUser", "isTutDone"],
		a = [];
		i.login = {
			init: function() {
				n.utils.waitToRun(function() {
					n.data.loadEntryPointData(),
					n.login.getFBData()
				},
				"isUserReady", n.data)
			},
			addLoginDataField: function(e) {
				c.includes(e) || c.push(e)
			},
			addCallback: function(e) {
				n.login.loginData ? e(n.login.loginData) : a.push(e)
			},
			getFBData: function() {
				n.data.loadData(c,
				function(e) {
					if (e.isNewUser = !e.IsOldUser, e.isNewUser) return n.utilsFB.log("ev_.login_new_user_incoming"),
					n.user.initNewUser(e),
					n.login.initLogin(e),
					void n.data.saveData({
						IsOldUser: !0
					});
					n.login.initLogin(e)
				})
			},
			initLogin: function(e) {
				n.login.isInitLoginCalled || (n.login.isInitLoginCalled = !0, n.login.loginData = e, n.user.lastLoginTime = e.LoginTime || o.time(), a.map(function(t) {
					try {
						t(e)
					} catch(i) {
						o.log("loginCallback func error", i)
					}
				}))
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	map_visual: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "09c34w6YTJO8L4dsvu8t4vq", "map_visual"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.mapVisual = void 0;
		var n = e("../all_modules");
		n._,
		i.mapVisual = {
			init: function() {},
			resetMap: function() {
				cc.find("Canvas/play_area/map").removeAllChildren(!0),
				cc.find("Canvas/play_area/fx_container").removeAllChildren(!0),
				n.audio.stopSound("lava")
			},
			renderBgMask: function(e) {
				if (e) {
					var t = cc.find("Canvas/play_area/bg_wall_mask").getComponent(cc.Mask)._graphics;
					t.clear(!1);
					var i = e[e.length - 1];
					t.moveTo(i.x, i.y),
					e.map(function(e) {
						return t.lineTo(e.x, e.y)
					}),
					t.lineWidth = 0,
					t.fillColor = cc.color(0, 0, 0, 255),
					t.fill()
				}
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	map: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "0d6cfdNy75GMJuG1Ko+EAbE", "map"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.map = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.map = {
			currentLevelInfo: null,
			init: function() {},
			resetMap: function() {
				o.log("Map.resetMap() !!"),
				n.mapVisual.resetMap()
			},
			renderMap: function(e) {
				o.log("Map.renderMap &gt; levelInfo =  ", e),
				this.resetMap(),
				e &amp;&amp; (this.currentLevelInfo = e, e.elementArr.map(function(e) {
					n.elementFactory.new(e.type, e)
				}), n.mapVisual.renderBgMask(e.backgroundMaskPointArr))
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	md5: [function(e, t) {
		"use strict";
		cc._RF.push(t, "f56881LwI9JXqqJ22wclO8B", "md5"),
		t.exports = {
			MD5: function(e) {
				function t(e, t) {
					return e &lt;&lt; t | e &gt;&gt;&gt; 32 - t
				}
				function i(e, t) {
					var i, n, o, c, a;
					return o = 2147483648 &amp; e,
					c = 2147483648 &amp; t,
					a = (1073741823 &amp; e) + (1073741823 &amp; t),
					(i = 1073741824 &amp; e) &amp; (n = 1073741824 &amp; t) ? 2147483648 ^ a ^ o ^ c: i | n ? 1073741824 &amp; a ? 3221225472 ^ a ^ o ^ c: 1073741824 ^ a ^ o ^ c: a ^ o ^ c
				}
				function n(e, t, i) {
					return e &amp; t | ~e &amp; i
				}
				function o(e, t, i) {
					return e &amp; i | t &amp; ~i
				}
				function c(e, t, i) {
					return e ^ t ^ i
				}
				function a(e, t, i) {
					return t ^ (e | ~i)
				}
				function l(e, o, c, a, l, r, s) {
					return e = i(e, i(i(n(o, c, a), l), s)),
					i(t(e, r), o)
				}
				function r(e, n, c, a, l, r, s) {
					return e = i(e, i(i(o(n, c, a), l), s)),
					i(t(e, r), n)
				}
				function s(e, n, o, a, l, r, s) {
					return e = i(e, i(i(c(n, o, a), l), s)),
					i(t(e, r), n)
				}
				function p(e, n, o, c, l, r, s) {
					return e = i(e, i(i(a(n, o, c), l), s)),
					i(t(e, r), n)
				}
				function g(e) {
					var t, i = "",
					n = "";
					for (t = 0; t &lt;= 3; t++) i += (n = "0" + (e &gt;&gt;&gt; 8 * t &amp; 255).toString(16)).substr(n.length - 2, 2);
					return i
				}
				var h, d, v, u, y, m, f, _, w, C = Array();
				for (C = function(e) {
					for (var t, i = e.length,
					n = i + 8,
					o = 16 * ((n - n % 64) / 64 + 1), c = Array(o - 1), a = 0, l = 0; l &lt; i;) a = l % 4 * 8,
					c[t = (l - l % 4) / 4] = c[t] | e.charCodeAt(l) &lt;&lt; a,
					l++;
					return a = l % 4 * 8,
					c[t = (l - l % 4) / 4] = c[t] | 128 &lt;&lt; a,
					c[o - 2] = i &lt;&lt; 3,
					c[o - 1] = i &gt;&gt;&gt; 29,
					c
				} (e = function(e) {
					e = e.replace(/\r\n/g, "\n");
					for (var t = "",
					i = 0; i &lt; e.length; i++) {
						var n = e.charCodeAt(i);
						n &lt; 128 ? t += String.fromCharCode(n) : n &gt; 127 &amp;&amp; n &lt; 2048 ? (t += String.fromCharCode(n &gt;&gt; 6 | 192), t += String.fromCharCode(63 &amp; n | 128)) : (t += String.fromCharCode(n &gt;&gt; 12 | 224), t += String.fromCharCode(n &gt;&gt; 6 &amp; 63 | 128), t += String.fromCharCode(63 &amp; n | 128))
					}
					return t
				} (e)), m = 1732584193, f = 4023233417, _ = 2562383102, w = 271733878, h = 0; h &lt; C.length; h += 16) d = m,
				v = f,
				u = _,
				y = w,
				m = l(m, f, _, w, C[h + 0], 7, 3614090360),
				w = l(w, m, f, _, C[h + 1], 12, 3905402710),
				_ = l(_, w, m, f, C[h + 2], 17, 606105819),
				f = l(f, _, w, m, C[h + 3], 22, 3250441966),
				m = l(m, f, _, w, C[h + 4], 7, 4118548399),
				w = l(w, m, f, _, C[h + 5], 12, 1200080426),
				_ = l(_, w, m, f, C[h + 6], 17, 2821735955),
				f = l(f, _, w, m, C[h + 7], 22, 4249261313),
				m = l(m, f, _, w, C[h + 8], 7, 1770035416),
				w = l(w, m, f, _, C[h + 9], 12, 2336552879),
				_ = l(_, w, m, f, C[h + 10], 17, 4294925233),
				f = l(f, _, w, m, C[h + 11], 22, 2304563134),
				m = l(m, f, _, w, C[h + 12], 7, 1804603682),
				w = l(w, m, f, _, C[h + 13], 12, 4254626195),
				_ = l(_, w, m, f, C[h + 14], 17, 2792965006),
				m = r(m, f = l(f, _, w, m, C[h + 15], 22, 1236535329), _, w, C[h + 1], 5, 4129170786),
				w = r(w, m, f, _, C[h + 6], 9, 3225465664),
				_ = r(_, w, m, f, C[h + 11], 14, 643717713),
				f = r(f, _, w, m, C[h + 0], 20, 3921069994),
				m = r(m, f, _, w, C[h + 5], 5, 3593408605),
				w = r(w, m, f, _, C[h + 10], 9, 38016083),
				_ = r(_, w, m, f, C[h + 15], 14, 3634488961),
				f = r(f, _, w, m, C[h + 4], 20, 3889429448),
				m = r(m, f, _, w, C[h + 9], 5, 568446438),
				w = r(w, m, f, _, C[h + 14], 9, 3275163606),
				_ = r(_, w, m, f, C[h + 3], 14, 4107603335),
				f = r(f, _, w, m, C[h + 8], 20, 1163531501),
				m = r(m, f, _, w, C[h + 13], 5, 2850285829),
				w = r(w, m, f, _, C[h + 2], 9, 4243563512),
				_ = r(_, w, m, f, C[h + 7], 14, 1735328473),
				m = s(m, f = r(f, _, w, m, C[h + 12], 20, 2368359562), _, w, C[h + 5], 4, 4294588738),
				w = s(w, m, f, _, C[h + 8], 11, 2272392833),
				_ = s(_, w, m, f, C[h + 11], 16, 1839030562),
				f = s(f, _, w, m, C[h + 14], 23, 4259657740),
				m = s(m, f, _, w, C[h + 1], 4, 2763975236),
				w = s(w, m, f, _, C[h + 4], 11, 1272893353),
				_ = s(_, w, m, f, C[h + 7], 16, 4139469664),
				f = s(f, _, w, m, C[h + 10], 23, 3200236656),
				m = s(m, f, _, w, C[h + 13], 4, 681279174),
				w = s(w, m, f, _, C[h + 0], 11, 3936430074),
				_ = s(_, w, m, f, C[h + 3], 16, 3572445317),
				f = s(f, _, w, m, C[h + 6], 23, 76029189),
				m = s(m, f, _, w, C[h + 9], 4, 3654602809),
				w = s(w, m, f, _, C[h + 12], 11, 3873151461),
				_ = s(_, w, m, f, C[h + 15], 16, 530742520),
				m = p(m, f = s(f, _, w, m, C[h + 2], 23, 3299628645), _, w, C[h + 0], 6, 4096336452),
				w = p(w, m, f, _, C[h + 7], 10, 1126891415),
				_ = p(_, w, m, f, C[h + 14], 15, 2878612391),
				f = p(f, _, w, m, C[h + 5], 21, 4237533241),
				m = p(m, f, _, w, C[h + 12], 6, 1700485571),
				w = p(w, m, f, _, C[h + 3], 10, 2399980690),
				_ = p(_, w, m, f, C[h + 10], 15, 4293915773),
				f = p(f, _, w, m, C[h + 1], 21, 2240044497),
				m = p(m, f, _, w, C[h + 8], 6, 1873313359),
				w = p(w, m, f, _, C[h + 15], 10, 4264355552),
				_ = p(_, w, m, f, C[h + 6], 15, 2734768916),
				f = p(f, _, w, m, C[h + 13], 21, 1309151649),
				m = p(m, f, _, w, C[h + 4], 6, 4149444226),
				w = p(w, m, f, _, C[h + 11], 10, 3174756917),
				_ = p(_, w, m, f, C[h + 2], 15, 718787259),
				f = p(f, _, w, m, C[h + 9], 21, 3951481745),
				m = i(m, d),
				f = i(f, v),
				_ = i(_, u),
				w = i(w, y);
				return (g(m) + g(f) + g(_) + g(w)).toLowerCase()
			}
		},
		cc._RF.pop()
	},
	{}],
	message: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "1dd4fAJa5hBrp2u108bTQpR", "message");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		},
		a = this &amp;&amp; this.__awaiter ||
		function(e, t, i, n) {
			return new(i || (i = Promise))(function(o, c) {
				function a(e) {
					try {
						r(n.next(e))
					} catch(t) {
						c(t)
					}
				}
				function l(e) {
					try {
						r(n.
						throw (e))
					} catch(t) {
						c(t)
					}
				}
				function r(e) {
					var t;
					e.done ? o(e.value) : (t = e.value, t instanceof i ? t: new i(function(e) {
						e(t)
					})).then(a, l)
				}
				r((n = n.apply(e, t || [])).next())
			})
		},
		l = this &amp;&amp; this.__generator ||
		function(e, t) {
			var i, n, o, c, a = {
				label: 0,
				sent: function() {
					if (1 &amp; o[0]) throw o[1];
					return o[1]
				},
				trys: [],
				ops: []
			};
			return c = {
				next: l(0),
				throw: l(1),
				return: l(2)
			},
			"function" == typeof Symbol &amp;&amp; (c[Symbol.iterator] = function() {
				return this
			}),
			c;
			function l(e) {
				return function(t) {
					return r([e, t])
				}
			}
			function r(c) {
				if (i) throw new TypeError("Generator is already executing.");
				for (; a;) try {
					if (i = 1, n &amp;&amp; (o = 2 &amp; c[0] ? n.
					return: c[0] ? n.
					throw || ((o = n.
					return) &amp;&amp; o.call(n), 0) : n.next) &amp;&amp; !(o = o.call(n, c[1])).done) return o;
					switch (n = 0, o &amp;&amp; (c = [2 &amp; c[0], o.value]), c[0]) {
					case 0:
					case 1:
						o = c;
						break;
					case 4:
						return a.label++,
						{
							value: c[1],
							done: !1
						};
					case 5:
						a.label++,
						n = c[1],
						c = [0];
						continue;
					case 7:
						c = a.ops.pop(),
						a.trys.pop();
						continue;
					default:
						if (! (o = (o = a.trys).length &gt; 0 &amp;&amp; o[o.length - 1]) &amp;&amp; (6 === c[0] || 2 === c[0])) {
							a = 0;
							continue
						}
						if (3 === c[0] &amp;&amp; (!o || c[1] &gt; o[0] &amp;&amp; c[1] &lt; o[3])) {
							a.label = c[1];
							break
						}
						if (6 === c[0] &amp;&amp; a.label &lt; o[1]) {
							a.label = o[1],
							o = c;
							break
						}
						if (o &amp;&amp; a.label &lt; o[2]) {
							a.label = o[2],
							a.ops.push(c);
							break
						}
						o[2] &amp;&amp; a.ops.pop(),
						a.trys.pop();
						continue
					}
					c = t.call(e, a)
				} catch(l) {
					c = [6, l],
					n = 0
				} finally {
					i = o = 0
				}
				if (5 &amp; c[0]) throw c[1];
				return {
					value: c[0] ? c[1] : void 0,
					done: !0
				}
			}
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var r = e("../all_modules"),
		s = r._,
		p = cc._decorator,
		g = p.ccclass,
		h = p.property,
		d = function(e) {
			function t() {
				var t = null !== e &amp;&amp; e.apply(this, arguments) || this;
				return t.Play_with_message = null,
				t
			}
			return o(t, e),
			t.prototype.onLoad = function() {},
			t.prototype.initBase64Picture = function(e) {
				return a(this, void 0, void 0,
				function() {
					var t, i, n, o, c, a, r, s, p, g, h, d, v, u;
					return l(this,
					function() {
						for (e.activeInHierarchy || (e.parent.active = !0, e.parent.parent.active = !0), t = new cc.Node, e.addChild(t), t.position = e.position, (i = t.addComponent(cc.Camera)).cullingMask = 4294967295, (n = new cc.RenderTexture).initWithSize(e.width, e.height), i.targetTexture = n, i.zoomRatio = 3.27, o = n.width, c = n.height, (a = document.createElement("canvas")).width = o, a.height = c, r = a.getContext("2d"), i.render(e), s = n.readPixels(), p = 4 * o, g = 0; g &lt; c; g++) h = c - 1 - g,
						d = new Uint8ClampedArray(s.buffer, h * o * 4, p),
						v = new ImageData(d, o, 1),
						r.putImageData(v, 0, g);
						return u = a.toDataURL(),
						setTimeout(function() {
							return e.parent.active = !1
						},
						2e3),
						[2, u]
					})
				})
			},
			t.prototype.initPayload = function(e, t, i, n) {
				return a(this, void 0, void 0,
				function() {
					var o;
					return l(this,
					function(c) {
						switch (c.label) {
						case 0:
							return c.trys.push([0, 2, , 3]),
							[4, this.initBase64Picture(e)];
						case 1:
							return o = c.sent(),
							[2, {
								action: "CUSTOM",
								text: r.language.generateMsgTextObject(t),
								cta: r.language.generateMsgTextObject(i),
								image: o,
								template: "play_turn",
								strategy: "IMMEDIATE",
								data: n,
								notification: "PUSH"
							}];
						case 2:
							throw c.sent();
						case 3:
							return [2]
						}
					})
				})
			},
			t.prototype.sendMessageScore = function(e, t) {
				return a(this, void 0, void 0,
				function() {
					var i, n, o;
					return l(this,
					function(c) {
						switch (c.label) {
						case 0:
							return c.trys.push([0, 3, , 4]),
							t = t || r.gameFlow.currentLevelIndex,
							r.utils.setLabelText(cc.find("Canvas/messages/ScoreMessenger/label_score"), t),
							i = r.user.name + " is solving level " + t + ". Can you reach that level?",
							console.log("sendMessageScore &gt;&gt; shareCode = " + e),
							[4, this.initPayload(this.Play_with_message, i, "Try now!", {
								isFromSharedPos: !0,
								shareCode: e
							})];
						case 1:
							return n = c.sent(),
							[4, FBInstant.updateAsync(n)];
						case 2:
							return c.sent(),
							[3, 4];
						case 3:
							return o = c.sent(),
							s.log("sendMessageScore", o),
							[3, 4];
						case 4:
							return [2]
						}
					})
				})
			},
			t.prototype.sendMessagePassChallenge = function(e) {
				return a(this, void 0, void 0,
				function() {
					var t, i, n, o;
					return l(this,
					function(c) {
						switch (c.label) {
						case 0:
							return c.trys.push([0, 3, , 4]),
							(t = cc.find("Canvas/message_challenge/content/avata")).getComponent(cc.Sprite).spriteFrame = r.user.avatarSpriteFrame,
							t.width = 180,
							t.height = 180,
							r.utils.setLabelText(cc.find("Canvas/message_challenge/content/bg_level/level"), "LEVEL " + r.gameFlow.currentLevelIndex),
							i = r.user.name + " solved your level " + r.gameFlow.currentLevelIndex + ". ",
							[4, this.initPayload(this.Play_with_message, i, "Create New Challenge !", {
								isFromSharedPos: !0,
								shareCode: e
							})];
						case 1:
							return n = c.sent(),
							[4, FBInstant.updateAsync(n)];
						case 2:
							return c.sent(),
							[3, 4];
						case 3:
							return o = c.sent(),
							s.log("sendMessageScore", o),
							[3, 4];
						case 4:
							return [2]
						}
					})
				})
			},
			c([h(cc.Node)], t.prototype, "Play_with_message", void 0),
			c([g], t)
		} (cc.Component);
		i.
	default = d,
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	more_lives: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "722d1DF6k5JnrSmRAbLQvl+", "more_lives"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.moreLives = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.moreLives = {
			init: function() {
				var e = this;
				n.utils.setLabelText(cc.find("Canvas/layer_more_lives/btn_watch/label_life_added"), "+" + n.configs.moreLifeAfterVideo),
				n.utils.setLabelText(cc.find("Canvas/layer_more_lives/btn_gold_buy_life/gold_price"), n.utils.localizeNumber(n.configs.lifePriceInGold) + "x"),
				n.utils.addButtonComp(cc.find("Canvas/layer_more_lives/btn_watch"),
				function() {
					n.video.showVideo(function() {
						n.iapUnlimitedLives.addMoreLives(n.configs.moreLifeAfterVideo),
						e.onLivesAdded()
					})
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_more_lives/btn_gold_buy_life"),
				function() {
					e.buy1Life() &amp;&amp; (n.iapUnlimitedLives.addMoreLives(1), e.onLivesAdded())
				})
			},
			buy1Life: function() {
				if (! (n.user.gold &lt; n.configs.lifePriceInGold)) return n.user.gold -= n.configs.lifePriceInGold,
				n.data.saveData({
					gold: n.user.gold
				}),
				n.ui.updateGold(),
				!0
			},
			startCountdown: function() {
				var e = this,
				t = o.time() + 1e3 * n.configs.moreLifeWaitTime;
				n.utils.setLabelCountDownTimer(cc.find("Canvas/layer_more_lives/socket01/label_remaining_time"), t,
				function() {
					n.iapUnlimitedLives.addMoreLives(n.configs.moreLifeAfterWait),
					e.onLivesAdded()
				})
			},
			onLivesAdded: function() {
				var e = cc.find("Canvas/layer_more_lives/socket01/label_remaining_time");
				e &amp;&amp; e.countDownTimerVar &amp;&amp; (clearInterval(e.countDownTimerVar), e.countDownTimerVar = 0),
				n.ui.hideLayer("layer_more_lives"),
				n.ui.showLayer("layer_game_over")
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	physics_config: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "df4aeqeZPtI7Jkz+D65gwPO", "physics_config"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.physicsConfig = i.trapConfig = void 0;
		var n = e("./all_modules");
		n._,
		i.trapConfig = {
			dropTrapSpeed: 1e3,
			dungeonCollapseTime: .4
		},
		i.physicsConfig = {
			characterMain: {
				gravityScale: 150,
				density: 1.2,
				restitution: 0,
				moveSpeed: 150
			},
			characterPrincess: {
				gravityScale: 100,
				density: 1,
				restitution: 0
			},
			characterEnemy: {
				gravityScale: 180,
				density: 1,
				restitution: 0,
				moveSpeed: 200
			},
			characterSnake: {
				gravityScale: 170,
				density: 1,
				restitution: 0,
				moveSpeed: 110
			},
			squareRock: {
				gravityScale: 100,
				density: 1,
				restitution: 0
			},
			circleRock: {
				gravityScale: 200,
				density: 1,
				restitution: 0
			},
			chest: {
				gravityScale: 200,
				density: 4,
				restitution: .15
			},
			bomb: {
				gravityScale: 150,
				density: 4,
				restitution: .3
			},
			sword: {
				gravityScale: 130,
				density: 1,
				restitution: .4
			},
			poisonGas: {
				gravityScale: 30,
				density: 1,
				restitution: -1
			},
			coldGas: {
				gravityScale: 10,
				density: 1,
				restitution: -1
			},
			water: {
				gravityScale: 100,
				density: 1,
				restitution: -1
			},
			lava: {
				gravityScale: 150,
				density: 1,
				restitution: 0
			},
			stone: {
				gravityScale: 150,
				density: 1,
				restitution: .2
			},
			gold: {
				gravityScale: 200,
				density: 1,
				restitution: .2
			},
			initElementProperties: function() {
				for (var e in this) if ("initElementProperties" != e) {
					var t = n.elementFactory.sampleNodes[e],
					i = t.getComponent(cc.RigidBody) || t.getComponentInChildren(cc.RigidBody);
					if (!i) return;
					var o = i.getComponent(cc.PhysicsCollider),
					c = this[e];
					i.gravityScale,
					o.density,
					o.restitution,
					c.hasOwnProperty("gravityScale") &amp;&amp; (i.gravityScale = c.gravityScale),
					c.hasOwnProperty("density") &amp;&amp; (o.density = c.density),
					c.hasOwnProperty("restitution") &amp;&amp; (o.restitution = c.restitution),
					o.apply()
				}
			}
		},
		cc._RF.pop()
	},
	{
		"./all_modules": "all_modules"
	}],
	progress_bar: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "2ed71VCca9B/5CYj883JltM", "progress_bar"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.progressBar = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.progressBar = {
			currentLevelSetArr: [],
			currentLevelGold: 0,
			init: function() {
				var e = this;
				n.utils.addButtonComp(cc.find("Canvas/layer_win/btn_x10_gold"),
				function() {
					return e.videoX10Gold()
				})
			},
			onLevelChanged: function() {
				for (var e = this,
				t = n.gameFlow.currentLevelIndex,
				i = 5 * (o.ceil(t / 5) - 1) + 1, c = [], a = 0; a &lt; 5; a++) c.push(i + a);
				this.currentLevelSetArr = c.map(function(t, i) {
					return {
						lvIndex: t,
						gold: n.configs.progressGoldArr[i],
						target: e.getLevelTarget(t)
					}
				}),
				this.currentLevelGold = this.currentLevelSetArr.find(function(e) {
					return e.lvIndex == t
				}).gold,
				n.utils.setLabelText(cc.find("Canvas/layer_win/btn_x10_gold/label_gold"), "x" + n.utils.localizeNumber(this.currentLevelGold)),
				n.utils.setLabelText(cc.find("Canvas/layer_win/btn_x10_gold/socket02/label_x10"), "x" + n.utils.localizeNumber(n.configs.winVideoGoldMultipliedBy * this.currentLevelGold)),
				cc.find("Canvas/play_area/progress_bar").children.map(function(i, o) {
					var c = e.currentLevelSetArr[o];
					n.utils.setLabelText(cc.find("label_reward", i), c.gold + ""),
					cc.find("active_line", i).active = c.lvIndex &lt; t &amp;&amp; 4 != o,
					cc.find("active_frame", i).active = c.lvIndex &gt;= t,
					cc.find("shadow", i).active = c.lvIndex &lt; t,
					cc.find("level_type", i).children.map(function(e) {
						return e.active = e.name == c.target
					})
				})
			},
			getLevelTarget: function(e) {
				var t = n.levelConfigList[e];
				if (!t) {
					var i = Object.keys(n.levelConfigList).length,
					c = o.abs(i - n.levelReapeatStartIndex),
					a = o.abs(e - n.levelReapeatStartIndex),
					l = n.levelReapeatStartIndex + a % c;
					t = n.levelConfigList[l] || {}
				}
				if (t) {
					var r = "enemy";
					return t.elementArr.some(function(e) {
						return "characterPrincess" == e.type ? (r = "princess", !0) : "gold" == e.type || "chest" == e.type ? (r = "treasure", !0) : void 0
					}),
					r
				}
			},
			addGoldForThisLevel: function() {
				n.game.addGold(this.currentLevelGold),
				this.currentLevelSetArr[this.currentLevelSetArr.length - 1].lvIndex == n.gameFlow.currentLevelIndex &amp;&amp; n.utilsFB.log("ev_number_progress_done")
			},
			videoX10Gold: function() {
				var e = this;
				n.video.showVideo(function() {
					n.game.addGold((n.configs.winVideoGoldMultipliedBy - 1) * e.currentLevelGold),
					n.ui.hideLayer("layer_win"),
					n.gameFlow.playNextLevel(),
					n.utilsFB.log("ev_win_x10_gold", 1, {
						level: n.gameFlow.currentLevelIndex
					})
				}),
				n.utilsFB.log("ev_click_video_gold_win")
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	promo_full_panel: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "16bbf4S2ghCtbvF+yJFzStl", "promo_full_panel");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.PromoFullPanel = void 0;
		var a = cc._decorator,
		l = a.ccclass,
		r = (a.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			return o(t, e),
			t.prototype.onLoad = function() {},
			t.prototype.onClickPlayGamePromo = function() {
				FBInstant.logEvent("ev_big_promo_action", 1, {
					action: "play"
				}),
				i.PromoFullPanel.saveDataWhenDoAction(),
				FBInstant.switchGameAsync(s).then(function() {},
				function() {
					i.PromoFullPanel.hidePromoGame(),
					console.log("switchPromoGame &gt;&gt; fail callback calling..."),
					FBInstant.logEvent("ev_big_promo_action", 1, {
						action: "cancel_switch"
					}),
					failCallback &amp;&amp; failCallback()
				}).
				catch(function(e) {
					console.log("switchPromoGame: ", e),
					failCallback &amp;&amp; failCallback()
				})
			},
			t.prototype.onClickClose = function() {
				i.PromoFullPanel.hidePromoGame(),
				i.PromoFullPanel.saveDataWhenDoAction(),
				FBInstant.logEvent("ev_big_promo_action", 1, {
					action: "hide"
				})
			},
			c([l], t)
		} (cc.Component));
		i.
	default = r;
		var s = "751084555550178",
		p = "promo_full_panel_" + s;
		i.PromoFullPanel = {
			bigPromoShownTime: 0,
			turnOn: !1,
			loading: function() {
				cc.find("Canvas/PromoFullPanel") &amp;&amp; this.isSupportedAPI("switchGameAsync") &amp;&amp; this.showPromoGame()
			},
			showPromoGame: function() {
				var e = cc.find("Canvas/PromoFullPanel"),
				t = e.getChildByName("content");
				e.active = !0,
				cc.tween(t).to(.2, {
					scale: 1
				}).start()
			},
			hidePromoGame: function() {
				var e = cc.find("Canvas/PromoFullPanel"),
				t = e.getChildByName("content");
				cc.tween(t).to(.2, {
					scale: 0
				}).call(function() {
					e.active = !1
				}).start()
			},
			checkValueWhenLoginFacebook: function() {
				this.turnOn &amp;&amp; (cc.find("Canvas/PromoFullPanel").active = !1, window.FBInstant &amp;&amp; FBInstant.player.getDataAsync([p]).then(function(e) {
					if (console.log("data checkValueWhenLoginFacebook ", e), e[p]) {
						if (i.PromoFullPanel.bigPromoShownTime = e[p], parseInt(i.PromoFullPanel.bigPromoShownTime) &gt;= 3) return ! 0;
						i.PromoFullPanel.loading()
					} else i.PromoFullPanel.bigPromoShownTime = 0,
					i.PromoFullPanel.loading()
				}))
			},
			saveDataWhenDoAction: function() {
				i.PromoFullPanel.bigPromoShownTime++;
				var e = {};
				e[p] = i.PromoFullPanel.bigPromoShownTime,
				FBInstant.player.setDataAsync(e).then(function() {
					console.log("Save data success!")
				}).
				catch(function(e) {
					console.log("Save data fail " + e.message)
				})
			},
			isSupportedAPI: function(e) {
				return !! window.FBInstant &amp;&amp; -1 != FBInstant.getSupportedAPIs().indexOf(e)
			}
		},
		cc._RF.pop()
	},
	{}],
	promo: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "393b1BPwJRCxJoyyNB5dut2", "promo"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.promo = void 0;
		var n = e("../all_modules");
		n._,
		i.promo = {
			isPromoAvailable: !1,
			init: function() {
				n.promo.isPromoAvailable = n.utilsFB.isSupportedAPI("switchGameAsync") &amp;&amp; n.configs.isShowPromoGames,
				cc.find("Canvas/layer_win/promo_panel").active = n.promo.isPromoAvailable,
				cc.find("Canvas/layer_win").children.map(function(e) {
					"promo_panel" != e.name &amp;&amp; (e.y += n.promo.isPromoAvailable ? 60 : 0)
				});
				var e = cc.find("Canvas/layer_win/promo_panel/ScrollView/view/content");
				this.renderButtonByIcon(e),
				this.shufflePromoList()
			},
			shufflePromoList: function() { [cc.find("Canvas/layer_win/promo_panel/ScrollView/view/content")].map(function(e) {
					var t = e.children.slice(0);
					for (e.removeAllChildren(); t.length;) e.addChild(n.utils.randomArrItem(t, !0));
					n.fx.bubblePromo(e)
				})
			},
			renderButtonByIcon: function(e) {
				e &amp;&amp; n.configs.listIdPromoGame &amp;&amp; e.children.map(function(e, t) {
					var i = n.configs.listIdPromoGame[t];
					n.utils.setLabelText(e.getChildByName("label_name"), i.name),
					n.utils.addButtonComp(e,
					function() {
						n.utilsFB.log("ev_click_button_promo_game", 1, {
							Position: t
						}),
						n.promo.switchPromoGame(i.id)
					})
				})
			},
			switchPromoGame: function(e, t) {
				FBInstant.switchGameAsync(e).then(function() {},
				function() {
					t &amp;&amp; t()
				}).
				catch(function(e) {
					console("switchPromoGame: ", e),
					t &amp;&amp; t()
				})
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	share: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "05b19F+OTxFs7xzUslTe1Qp", "share");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		},
		a = this &amp;&amp; this.__awaiter ||
		function(e, t, i, n) {
			return new(i || (i = Promise))(function(o, c) {
				function a(e) {
					try {
						r(n.next(e))
					} catch(t) {
						c(t)
					}
				}
				function l(e) {
					try {
						r(n.
						throw (e))
					} catch(t) {
						c(t)
					}
				}
				function r(e) {
					var t;
					e.done ? o(e.value) : (t = e.value, t instanceof i ? t: new i(function(e) {
						e(t)
					})).then(a, l)
				}
				r((n = n.apply(e, t || [])).next())
			})
		},
		l = this &amp;&amp; this.__generator ||
		function(e, t) {
			var i, n, o, c, a = {
				label: 0,
				sent: function() {
					if (1 &amp; o[0]) throw o[1];
					return o[1]
				},
				trys: [],
				ops: []
			};
			return c = {
				next: l(0),
				throw: l(1),
				return: l(2)
			},
			"function" == typeof Symbol &amp;&amp; (c[Symbol.iterator] = function() {
				return this
			}),
			c;
			function l(e) {
				return function(t) {
					return r([e, t])
				}
			}
			function r(c) {
				if (i) throw new TypeError("Generator is already executing.");
				for (; a;) try {
					if (i = 1, n &amp;&amp; (o = 2 &amp; c[0] ? n.
					return: c[0] ? n.
					throw || ((o = n.
					return) &amp;&amp; o.call(n), 0) : n.next) &amp;&amp; !(o = o.call(n, c[1])).done) return o;
					switch (n = 0, o &amp;&amp; (c = [2 &amp; c[0], o.value]), c[0]) {
					case 0:
					case 1:
						o = c;
						break;
					case 4:
						return a.label++,
						{
							value: c[1],
							done: !1
						};
					case 5:
						a.label++,
						n = c[1],
						c = [0];
						continue;
					case 7:
						c = a.ops.pop(),
						a.trys.pop();
						continue;
					default:
						if (! (o = (o = a.trys).length &gt; 0 &amp;&amp; o[o.length - 1]) &amp;&amp; (6 === c[0] || 2 === c[0])) {
							a = 0;
							continue
						}
						if (3 === c[0] &amp;&amp; (!o || c[1] &gt; o[0] &amp;&amp; c[1] &lt; o[3])) {
							a.label = c[1];
							break
						}
						if (6 === c[0] &amp;&amp; a.label &lt; o[1]) {
							a.label = o[1],
							o = c;
							break
						}
						if (o &amp;&amp; a.label &lt; o[2]) {
							a.label = o[2],
							a.ops.push(c);
							break
						}
						o[2] &amp;&amp; a.ops.pop(),
						a.trys.pop();
						continue
					}
					c = t.call(e, a)
				} catch(l) {
					c = [6, l],
					n = 0
				} finally {
					i = o = 0
				}
				if (5 &amp; c[0]) throw c[1];
				return {
					value: c[0] ? c[1] : void 0,
					done: !0
				}
			}
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var r = e("../all_modules"),
		s = r._,
		p = cc._decorator,
		g = p.ccclass,
		h = p.property,
		d = function(e) {
			function t() {
				var t = null !== e &amp;&amp; e.apply(this, arguments) || this;
				return t.SharePhoto_Normal = null,
				t
			}
			return o(t, e),
			t.prototype.initBase64Picture = function(e) {
				return a(this, void 0, void 0,
				function() {
					var t, i, n, o, c, a, r, p, g, h, d, v, u, y;
					return l(this,
					function() {
						for (e.activeInHierarchy || (e.parent.active = !0, e.parent.parent.active = !0), t = new cc.Node, e.addChild(t), t.position = e.position, (i = t.addComponent(cc.Camera)).cullingMask = 4294967295, (n = new cc.RenderTexture).initWithSize(e.width, e.height), i.targetTexture = n, i.zoomRatio = 2.5, o = n.width, c = n.height, (a = document.createElement("canvas")).width = o, a.height = c, r = a.getContext("2d"), i.render(e), p = n.readPixels(), g = 4 * o, h = 0; h &lt; c; h++) d = c - 1 - h,
						v = new Uint8ClampedArray(p.buffer, d * o * 4, g),
						u = new ImageData(v, o, 1),
						r.putImageData(u, 0, h);
						return y = a.toDataURL(),
						s.log(e, n, i, a),
						setTimeout(function() {
							return e.parent.active = !1
						},
						2e3),
						[2, y]
					})
				})
			},
			t.prototype.initPayload = function(e, t, i, n) {
				return a(this, void 0, void 0,
				function() {
					var o;
					return l(this,
					function(c) {
						switch (c.label) {
						case 0:
							return c.trys.push([0, 5, , 6]),
							n ? [4, this.initBase64PictureChallenge(e)] : [3, 2];
						case 1:
							return o = c.sent(),
							[3, 4];
						case 2:
							return [4, this.initBase64Picture(e)];
						case 3:
							o = c.sent(),
							c.label = 4;
						case 4:
							return [2, {
								intent: "SHARE",
								image: o,
								text: t,
								data: i
							}];
						case 5:
							throw c.sent();
						case 6:
							return [2]
						}
					})
				})
			},
			t.prototype.sharePostNormal = function(e) {
				return a(this, void 0, void 0,
				function() {
					var t, i;
					return l(this,
					function(n) {
						switch (n.label) {
						case 0:
							return n.trys.push([0, 3, , 4]),
							[4, this.initPayload(this.SharePhoto_Normal, "", {
								isFromSharedPos: !0,
								shareCode: e
							},
							!1)];
						case 1:
							return t = n.sent(),
							s.log(t),
							[4, FBInstant.shareAsync(t)];
						case 2:
							return n.sent(),
							[3, 4];
						case 3:
							return i = n.sent(),
							s.log(i),
							[3, 4];
						case 4:
							return [2]
						}
					})
				})
			},
			t.prototype.sharePostChallenge = function(e, t) {
				return a(this, void 0, void 0,
				function() {
					var i, n;
					return l(this,
					function(o) {
						switch (o.label) {
						case 0:
							return o.trys.push([0, 3, , 4]),
							[4, this.initPayload(this.SharePhoto_Normal, "", {
								isFromSharedPos: !0,
								shareCode: e,
								playerChallengeId: r.user.id,
								playerChallengeLevel: r.gameFlow.currentLevelIndex,
								playerChallengeAvata: r.user.photo,
								playerChallengeName: r.user.name
							},
							!0)];
						case 1:
							return i = o.sent(),
							s.log(i),
							[4, FBInstant.shareAsync(i)];
						case 2:
							return o.sent(),
							t &amp;&amp; t(),
							[3, 4];
						case 3:
							return n = o.sent(),
							t &amp;&amp; t(),
							s.log(n),
							[3, 4];
						case 4:
							return [2]
						}
					})
				})
			},
			t.prototype.initBase64PictureChallenge = function(e) {
				return a(this, void 0, void 0,
				function() {
					var t, i, n, o, c, a, r, p, g, h, d, v, u, y;
					return l(this,
					function() {
						for (e.activeInHierarchy || (e.parent.active = !0, e.parent.parent.active = !0), t = new cc.Node, e.addChild(t), t.position = cc.v3(0, 0, 0), (i = t.addComponent(cc.Camera)).cullingMask = 4294967295, (n = new cc.RenderTexture).initWithSize(e.width, e.height), i.targetTexture = n, i.zoomRatio = 2.7, o = n.width, c = n.height, (a = document.createElement("canvas")).width = o, a.height = c, r = a.getContext("2d"), i.render(e), p = n.readPixels(), g = 4 * o, h = 0; h &lt; c; h++) d = c - 1 - h,
						v = new Uint8ClampedArray(p.buffer, d * o * 4, g),
						u = new ImageData(v, o, 1),
						r.putImageData(u, 0, h);
						return y = a.toDataURL(),
						s.log(e, n, i, a),
						setTimeout(function() {
							return e.parent.active = !1
						},
						2e3),
						[2, y]
					})
				})
			},
			c([h(cc.Node)], t.prototype, "SharePhoto_Normal", void 0),
			c([g], t)
		} (cc.Component);
		i.
	default = d,
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	social: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "2fc8daS0+9LkoZznqdK+UUs", "social"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.social = void 0;
		var n = e("../all_modules"),
		o = n._,
		c = e("../social/share"),
		a = e("../social/message");
		i.social = {
			init: function() {
				var e = this;
				n.login.addLoginDataField("subscribeInfo"),
				n.login.addLoginDataField("shortcutInfo"),
				n.login.addCallback(function(t) {
					e.subscribeInfo = t.hasOwnProperty("subscribeInfo") ? t.subscribeInfo: 5,
					e.shortcutInfo = t.hasOwnProperty("shortcutInfo") ? t.shortcutInfo: 5
				})
			},
			share: function(e, t) {
				n.utils.setLabelText(cc.find("Canvas/shares/sharepicture/label_score"), t || n.gameFlow.currentLevelIndex),
				cc.find("Canvas/shares").getComponent(c.
			default).sharePostNormal(e)
			},
			shareIQ: function(e) {
				n.utils.setLabelText(cc.find("Canvas/shares_iq_image/sharepicture/label_score"), n.utils.localizeNumber(e)),
				cc.find("Canvas/shares_iq_image").getComponent(c.
			default).sharePostNormal("share_iq")
			},
			shareChallenge: function(e) {
				n.utils.setLabelText(cc.find("Canvas/share_challenge/content/bg_level/level"), "LEVEL " + n.utils.localizeNumber(n.gameFlow.currentLevelIndex)),
				cc.find("Canvas/share_challenge").getComponent(c.
			default).sharePostChallenge("share_challenge", e)
			},
			sendMessageAfterInvite: function(e) {
				cc.find("Canvas/messages").getComponent(a.
			default).sendMessageScore(e)
			},
			sendMessageAfterChallengeSuccess: function() {
				cc.find("Canvas/message_challenge").getComponent(a.
			default).sendMessagePassChallenge("message_result")
			},
			askBotSubscribe: function(e) {
				var t = this,
				i = function() {
					return e &amp;&amp; e()
				};
				return window.FBInstant ? n.utilsFB.isSupportedAPI("player.canSubscribeBotAsync") &amp;&amp; n.utilsFB.isSupportedAPI("player.subscribeBotAsync") ? "accepted" == this.subscribeInfo || this.subscribeInfo &lt;= 0 ? i() : (this.subscribeInfo--, n.data.saveData({
					subscribeInfo: this.subscribeInfo
				}), void FBInstant.player.canSubscribeBotAsync().then(function(e) {
					if (!e) return i() || o.log(" askBotSubscribe :: can_subscribe = " + e + " ");
					FBInstant.player.subscribeBotAsync().then(function() {
						t.subscribeInfo = "accepted",
						n.data.saveData({
							subscribeInfo: t.subscribeInfo
						}),
						i(),
						n.utilsFB.log("ev_subcribe_bot", 1, {
							result: "success"
						})
					}).
					catch(function() {
						i(),
						n.utilsFB.log("ev_subcribe_bot", 1, {
							result: "fail"
						})
					})
				}).
				catch(function(e) {
					return i() || o.log(" askBotSubscribe :: canSubscribeBotAsync().then(fail) =&gt; ", e)
				})) : i() || o.log(" askBotSubscribe :: isSupportedAPI &gt; not supported") : i()
			},
			askShortcut: function(e) {
				var t = this,
				i = function() {
					return e &amp;&amp; e()
				};
				return window.FBInstant &amp;&amp; n.utilsFB.isSupportedAPI("canCreateShortcutAsync") &amp;&amp; n.utilsFB.isSupportedAPI("createShortcutAsync") ? "accepted" == this.shortcutInfo || this.shortcutInfo &lt;= 0 ? i() || o.log("askShortcut ccccccccc // this.shortcutInfo=" + this.shortcutInfo) : (this.shortcutInfo--, n.data.saveData({
					shortcutInfo: this.shortcutInfo
				}), void FBInstant.canCreateShortcutAsync().then(function(e) {
					if (!e) return i();
					FBInstant.createShortcutAsync().then(function() {
						console.log("askShortcut accepted !!!!"),
						t.shortcutInfo = "accepted",
						n.data.saveData({
							shortcutInfo: t.shortcutInfo
						}),
						i(),
						n.utilsFB.log("ev_shortcut", 1, {
							result: "success"
						})
					}).
					catch(function(e) {
						i(),
						o.log(" createShortcutAsync :: ", e),
						n.utilsFB.log("ev_shortcut", 1, {
							result: "fail"
						})
					})
				}).
				catch(function(e) {
					return i() || o.log(" canCreateShortcutAsync :: ", e)
				})) : i()
			},
			postSessionScore: function() {
				window.FBInstant &amp;&amp; (n.user.score &amp;&amp; FBInstant.postSessionScore(n.user.score), o.log(" postSessionScore called score = " + n.user.score), n.user.score &gt; (n.game.bestSessionScore || 0) &amp;&amp; (n.game.bestSessionScore = n.user.score))
			},
			createContext: function(e, t, i) {
				if (!window.FBInstant) return t &amp;&amp; t();
				var c = function(e, t) {
					e &amp;&amp; o.log("createContext Success ====&gt; ", e),
					t &amp;&amp; o.log("createContext Fail  ====&gt; ", t)
				};
				FBInstant.context.createAsync(e).then(function() {
					n.social.sendMessageAfterChallengeSuccess(),
					t &amp;&amp; t(),
					c("success")
				},
				function(e) {
					i &amp;&amp; i(e),
					c("fail", e)
				})
			},
			invite: function(e, t) {
				var i = this;
				try {
					FBInstant.context.chooseAsync().then(function() {
						n.utilsFB.log("ev_invite_success", 1, {
							code: e
						}),
						i.sendMessageAfterInvite(e),
						t &amp;&amp; t(FBInstant.context.getID())
					}).
					catch(function(e) {
						o.log(e),
						t &amp;&amp; t()
					})
				} catch(c) {
					o.log(c),
					t &amp;&amp; t()
				}
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules",
		"../social/message": "message",
		"../social/share": "share"
	}],
	spine_control: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "c9046hsca5LB5K4pI8Fvz0s", "spine_control"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.spineControl = void 0;
		var n = e("../all_modules");
		n._,
		i.spineControl = {
			charRunLeft: function(e) {
				e.scaleX = -1,
				n.spineUtils.runSpineNodeAnim(e, "Run", !0)
			},
			charRunRight: function(e) {
				e.scaleX = 1,
				n.spineUtils.runSpineNodeAnim(e, "Run", !0)
			},
			charAttack: function(e, t, i) {
				var o = n.utils.getGlobalPosition(e),
				c = n.utils.getGlobalPosition(t);
				e.scaleX = o.x &gt; c.x ? -1 : 1,
				n.spineUtils.runSpineNodeAnim(e, "Attack", !1, i)
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	spine_utils: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "016beB4YllGD6Fgtk5VlY0g", "spine_utils"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.spineUtils = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.spineUtils = {
			init: function() {},
			runSpineNodeAnim: function(e, t, i, o) {
				void 0 === i &amp;&amp; (i = !1);
				var c = e.getComponentsInChildren("sp.Skeleton")[0];
				if (!c) return o &amp;&amp; o();
				var a = t + (e.animSuffix || "");
				c.setAnimation(0, a, i),
				o &amp;&amp; !i &amp;&amp; (e.spineAnimCallbackTimerVar &amp;&amp; n.utils.clearTimeout(e.spineAnimCallbackTimerVar), e.spineAnimCallbackTimerVar = n.utils.setTimeout(function() {
					o &amp;&amp; e.active &amp;&amp; e.parent &amp;&amp; o()
				},
				1e3 * c.findAnimation(a).duration))
			},
			runSpineNodeAnimArr: function(e, t, i) {
				o.log("runSpineNodeAnimArr &gt;&gt; animNameArr=" + t + "// charNode.animSuffix  = " + e.animSuffix + " ");
				var c = e.getComponentsInChildren("sp.Skeleton")[0];
				if (!c) return i &amp;&amp; i();
				c.setAnimation(0, t[0] + (e.animSuffix || ""), !1);
				var a = [],
				l = 0;
				return t.map(function(t, i) {
					var n = t + (e.animSuffix || "");
					i &amp;&amp; c.addAnimation(0, n);
					var o = c.findAnimation(n).duration;
					l += o,
					a.push(o)
				}),
				e.spineAnimCallbackTimerVar &amp;&amp; n.utils.clearTimeout(e.spineAnimCallbackTimerVar),
				e.spineAnimCallbackTimerVar = n.utils.setTimeout(function() {
					i &amp;&amp; e.active &amp;&amp; e.parent &amp;&amp; i()
				},
				1e3 * l),
				a
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	square_rock_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "f75988TGZFHcY6H+1VScwEV", "square_rock_comp");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var a = e("../../all_modules"),
		l = (a._, cc._decorator),
		r = l.ccclass,
		s = (l.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			return o(t, e),
			t.prototype.onBeginContact = function(e, t, i) {
				var n = a.elementUtils.colliderNode2RootElement,
				o = this.node,
				c = i.node,
				l = n(o);
				n(c),
				!l || l.isPlayingSound || o.getComponent(cc.RigidBody).linearVelocity.mag() &lt; 40 &amp;&amp; c.getComponent(cc.RigidBody).linearVelocity.mag() &lt; 40 || (l.isPlayingSound = !0, a.audio.playSound("square_rock_hit_ground", 1), setTimeout(function() {
					l.isPlayingSound = !1
				},
				2e3))
			},
			c([r], t)
		} (cc.Component));
		i.
	default = s,
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	trap_drop_collision_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "c3f7fiztTxKLKH+udtspx+0", "trap_drop_collision_comp");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var a = e("../../all_modules"),
		l = (a._, cc._decorator),
		r = l.ccclass,
		s = (l.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			return o(t, e),
			t.prototype.onLoad = function() {},
			t.prototype.onBeginContact = function(e, t, i) {
				var n = i.node;
				t.node,
				"character" != n.group || n.isDead || n.setDie(n),
				"wall" != n.group &amp;&amp; "latch" != n.group &amp;&amp; "solid_body" != n.group || (this.node.stopAllActions(), this.node.getComponent(cc.RigidBody).awake = !1, this.node.getComponent(cc.RigidBody).linearVelocity = cc.Vec2.ZERO, a.audio.playSound("falling_trap"))
			},
			t.prototype.fallDown = function() {
				var e = this,
				t = 1e3 / a.trapConfig.dropTrapSpeed;
				cc.tween(this.node).by(t, {
					position: cc.v2(0, -1e3)
				}).start(),
				this.node.getComponent(cc.RigidBody).awake = !0;
				var i = a.utils.setInterval(function() {
					if (!e.node) return a.utils.clearInterval(i);
					e.node.getComponent(cc.RigidBody).awake = !0
				},
				300)
			},
			c([r], t)
		} (cc.Component));
		i.
	default = s,
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	trap_drop_trigger_collision_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "855bfXTDbZA3p9+dxleoDT8", "trap_drop_trigger_collision_comp");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var a = e("../../all_modules"),
		l = (a._, cc._decorator),
		r = l.ccclass,
		s = (l.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			return o(t, e),
			t.prototype.onLoad = function() {},
			t.prototype.onBeginContact = function(e, t, i) {
				var n = i.node; ["wall", "water"].includes(n.group) || this.triggerTrap()
			},
			t.prototype.triggerTrap = function() {
				var e = this;
				this.isTriggered || (this.isTriggered = !0, this.node.getChildByName("joyStick2").angle = 40, a.utils.setTimeout(function() {
					var t = e.node.parent.getComponentsInChildren("trap_drop_collision_comp"); (t.find(function(t) {
						return t.node.trapId == e.node.trapId
					}) || t[0]).fallDown()
				},
				200))
			},
			c([r], t)
		} (cc.Component));
		i.
	default = s,
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	trap_jaw_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "71c5fo0I7VDVJimsOxntL71", "trap_jaw_comp");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var a = e("../../all_modules"),
		l = a._,
		r = cc._decorator,
		s = r.ccclass,
		p = (r.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			return o(t, e),
			t.prototype.onBeginContact = function(e, t, i) {
				var n = a.elementUtils.colliderNode2RootElement,
				o = this.node,
				c = i.node,
				r = n(o),
				s = n(c);
				if (!r.isTrapped &amp;&amp; "character" == s.group &amp;&amp; !s.isDead) {
					cc.tween(cc.find("visual/left", r)).by(.15, {
						angle: -70
					}).start(),
					cc.tween(cc.find("visual/right", r)).by(.15, {
						angle: 70
					}).start(),
					r.isTrapped = !0,
					a.audio.playSound("jaw_trap");
					var p = this.getComponent(cc.PhysicsCollider).getAABB(),
					g = c.getComponent(cc.PhysicsCollider).getAABB(),
					h = (p.width / 2 + g.width / 2 - 20) / s.getComponent(cc.RigidBody).linearVelocity.mag();
					l.log("Trap JAW  &gt;&gt; timeToWait = " + h + " // this.colliderSize.width = " + p.width + " // otherRootNode.linearVelocity = " + s.getComponent(cc.RigidBody).linearVelocity.mag() + " "),
					a.utils.setTimeout(function() {
						s.getComponent("character_comp").handleCharsDie(s)
					},
					1e3 * h)
				}
			},
			c([s], t)
		} (cc.Component));
		i.
	default = p,
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}],
	tut: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "d73dcq4+5VKMazEshUO5rp2", "tut"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.tut = void 0;
		var n = e("../all_modules");
		n._,
		i.tut = {
			isTutDone: !1,
			init: function() {
				var e = this;
				n.login.addCallback(function(t) {
					e.isTutDone = !!t.isTutDone,
					t.isTutDone || t.last_level &amp;&amp; 1 != t.last_level || e.startTut()
				})
			},
			startTut: function() {
				var e = cc.find("Canvas/layer_tut/handTutorial"),
				t = e.getComponent(cc.Sprite),
				i = e.children.map(function(e) {
					return e.getComponent(cc.Sprite).spriteFrame
				}),
				o = 0;
				n.utils.setInterval(function() {
					t.spriteFrame = i[o],
					++o &gt;= i.length &amp;&amp; (o = 0)
				},
				120)
			},
			checkEndTut: function() {
				this.isTutDone || (this.isTutDone = !0, n.utilsFB.log("ev_done_tutorial", 1, {
					tutName: "start_tut"
				}), n.ui.hideLayer("layer_tut"), n.data.saveData({
					isTutDone: "1"
				}))
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	ui: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "5c6e5hkCBNNPpCSzl/5UV94", "ui"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.ui = void 0;
		var n = e("../all_modules"),
		o = n._;
		i.ui = {
			hideNagTimer: null,
			hideLoadingRealServerTimer: null,
			init: function() {
				this.adjustAllLayerSizes(),
				n.ui.initButtonHandler()
			},
			adjustAllLayerSizes: function() {
				var e = ["sample_nodes"];
				cc.find("Canvas").children.map(function(t) {
					e.includes(t.name) || (t.width = cc.winSize.width, t.height = cc.winSize.height)
				})
			},
			initButtonHandler: function() {
				var e = this;
				console.log(this)
				n.utils.addButtonComp(cc.find("Canvas/play_area/btn_reset"),
				function() {
					n.gameFlow.replayInGame()
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_win/btn_next_level_invite"),
				function() {
					n.utilsFB.log("ev_click_next_win_invite"),
					n.ui.hideLayer("layer_win"),
					n.gameFlow.playNextLevelWithFriends(),
					e.inviteNextLevelCancelledTime++
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_win/btn_next_level"),
				function() {
					n.utilsFB.log("ev_click_next_win"),
					n.ui.hideLayer("layer_win"),
					n.gameFlow.playNextLevel()
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_win/btn_share_challenge"),
				function() {
					n.utilsFB.log("ev_click_share_challenge"),
					n.social.shareChallenge(function() {
						n.ui.hideLayer("layer_win"),
						n.gameFlow.playNextLevel()
					})
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_pass_challenge/btn_pass_challenge"),
				function() {
					n.utilsFB.log("ev_click_pass_challenge"),
					n.user.userChallengeInfo &amp;&amp; n.social.createContext(n.user.userChallengeInfo.id,
					function() {
						n.ui.hideLayer("layer_pass_challenge"),
						n.user.resetEntryPointIfPassChallenge(),
						n.gameFlow.playNextLevel()
					},
					function() {
						n.ui.hideLayer("layer_pass_challenge"),
						n.user.resetEntryPointIfPassChallenge(),
						n.gameFlow.playNextLevel()
					})
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_game_over/btn_replay"),
				function() {
					n.utilsFB.logByLevel("ev_click_replay_lose"),
					n.ui.hideLayer("layer_game_over"),
					n.gameFlow.replay()
				}),
				n.utils.addButtonComp(cc.find("Canvas/play_area/btn_invite"),
				function() {
					n.utilsFB.log("ev_click_invite_gameplay"),
					n.social.invite("invite_home")
				}),
				n.utils.addButtonComp(cc.find("Canvas/play_area/btn_skip"),
				function() {
					n.user.userChallengeInfo &amp;&amp; (n.ui.hideLayer("layer_pass_challenge"), n.user.resetEntryPointIfPassChallenge()),
					n.gameFlow.playNextLevel()
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_win/btn_invite"),
				function() {
					n.utilsFB.log("ev_click_invite_win"),
					n.social.invite("invite_win")
				}),
				n.utils.addButtonComp(cc.find("Canvas/play_area/btn_share"),
				function() {
					n.utilsFB.log("ev_click_share_gameplay"),
					n.social.share("share_game_play")
				}),
				n.utils.addButtonComp(cc.find("Canvas/layer_win/btn_share"),
				function() {
					n.utilsFB.log("ev_click_share_win"),
					n.social.share("share_screen_win")
				})
				console.log(n.utils)
			},
			showLayer: function(e) {
				var t = cc.find("Canvas/" + e);
				t &amp;&amp; (t.active = !0)
			},
			hideLayer: function(e) {
				var t = cc.find("Canvas/" + e);
				t &amp;&amp; (t.active = !1)
			},
			showAlert: function() {},
			showLoading: function() {
				n.ui.showLayer("layer_loading"),
				n.ui.hideLoadingTimer &amp;&amp; clearTimeout(n.ui.hideLoadingTimer),
				n.ui.hideLoadingTimer = setTimeout(function() {
					return n.ui.hideLoading()
				},
				1e4)
			},
			hideLoading: function() {
				n.ui.hideLayer("layer_loading"),
				n.ui.hideLoadingTimer &amp;&amp; clearTimeout(n.ui.hideLoadingTimer)
			},
			showNagScreen: function() {
				cc.find("Canvas/nag_screen").active = !0,
				n.ui.hideNagTimer &amp;&amp; clearTimeout(n.ui.hideNagTimer),
				n.ui.hideNagTimer = setTimeout(function() {
					return n.ui.hideNagScreen()
				},
				1e4)
			},
			hideNagScreen: function() {
				cc.find("Canvas/nag_screen").active = !1,
				n.ui.hideNagTimer &amp;&amp; clearTimeout(n.ui.hideNagTimer)
			},
			disableButton: function(e) {
				e.getComponent(cc.Button) || o.log("KHoong ton tai button component"),
				e.getComponent(cc.Button) &amp;&amp; (e.getComponent(cc.Button).enabled = !1),
				e.opacity = parseInt(76.5)
			},
			enableButton: function(e) {
				e.getComponent(cc.Button) &amp;&amp; (e.getComponent(cc.Button).enabled = !0),
				e.opacity = 255
			},
			updateButtonOnStartGame: function() {
				this.enableButton(cc.find("Canvas/play_area/btn_reset"))
			},
			updateButtonOnWin: function() {
				this.disableButton(cc.find("Canvas/play_area/btn_reset"))
			},
			showCompliment: function(e) {
				var t = cc.find("Canvas/play_area/labels/compliment"),
				i = t.getChildByName("label");
				n.language.setLabelDataAndRender(i, e),
				t.stopAllActions(),
				t.scale = 0,
				t.runAction(cc.sequence(cc.scaleTo(.2, 1.15).easing(cc.easeOut(3)), cc.scaleTo(.1, 1).easing(cc.easeIn(1)), cc.delayTime(2), cc.scaleTo(.1, 1.15).easing(cc.easeOut(1)), cc.scaleTo(.2, 0).easing(cc.easeIn(3))))
			},
			updateLevel: function() {
				var e = cc.find("Canvas/layer_edit_level/top_bar/label_level"),
				t = cc.find("Canvas/play_area/top_bar/label_level"),
				i = cc.find("Canvas/layer_win/label_level");
				n.utils.setLabelText(t, n.gameFlow.currentLevelIndex),
				n.utils.setLabelText(i, n.gameFlow.currentLevelIndex),
				n.utils.setLabelText(e, n.gameFlow.currentLevelIndex)
			},
			updateLifeCount: function(e) {
				e = e || n.user.lifeCount,
				n.utils.setLabelText(cc.find("Canvas/play_area/life_count/label"), "" + e)
			},
			updateGold: function() {
				n.utils.setLabelText(cc.find("Canvas/play_area/gold_bar/label_gold"), "" + n.utils.localizeNumber(n.user.gold));
				var e = n.user.gold &gt;= n.configs.lifePriceInGold ? 255 : 100;
				cc.find("Canvas/layer_more_lives/btn_gold_buy_life").opacity = e,
				cc.find("Canvas/layer_unlimited_lives/btn_gold_buy_life").opacity = e
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	"use_v2.1-2.2.1_cc.Toggle_event": [function(e, t) {
		"use strict";
		cc._RF.push(t, "5fe26qFJK1HbazqrHy+yv+7", "use_v2.1-2.2.1_cc.Toggle_event"),
		cc.Toggle &amp;&amp; (cc.Toggle._triggerEventInScript_isChecked = !0),
		cc._RF.pop()
	},
	{}],
	user: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "39726/G6VdM34w640o8Ogpj", "user"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.user = void 0;
		var n = e("../all_modules");
		n._,
		i.user = {
			id: 0,
			name: 0,
			score: 0,
			bestScore: 0,
			lifeCount: 0,
			gold: 0,
			isInitialized: !1,
			initCallbackArr: [],
			currentLevelIndex: 0,
			entryPointData: null,
			userChallengeInfo: null,
			avatarSpriteFrame: null,
			userDailyReward: null,
			init: function() {
				var e = this;
				// this.getFBInfo(),
				n.login.addLoginDataField("lastScore"),
				n.login.addLoginDataField("bestScore"),
				n.login.addLoginDataField("last_level"),
				n.login.addLoginDataField("lifeCount"),
				n.login.addLoginDataField("gold"),
				n.login.addCallback(function(t) {
					if (e.lifeCount = t.lifeCount || 0, e.gold = t.gold || 0, n.ui.updateGold(), n.gameFlow.currentLevelIndex = t.last_level || 1, n.ui.updateLevel(), n.ui.updateLifeCount(e.lifeCount), n.user.entryPointData) if (n.user.entryPointData.playerChallengeId &amp;&amp; n.user.entryPointData.playerChallengeId != n.user.id) {
						console.log("ChallengeMode !!!!");
						var i = n.user.entryPointData.playerChallengeLevel,
						o = {
							id: n.user.entryPointData.playerChallengeId,
							photo: n.user.entryPointData.playerChallengeAvata,
							name: n.user.entryPointData.playerChallengeName
						};
						n.user.userChallengeInfo = o,
						n.user.currentLevelIndex = t.last_level || 1,
						n.gameFlow.currentLevelIndex = i
					} else n.user.entryPointData = null,
					n.user.userChallengeInfo = null,
					n.user.currentLevelIndex = 0;
					n.user.renderUiChallenge(),
					n.gameFlow.startNewGame(),
					e.isInitialized = !0,
					e.initCallbackArr.map(function(e) {
						return e()
					})
				})
			},
			renderUiChallenge: function() {
				var e = cc.find("Canvas/play_area/challenge_mode");
				if (n.user.userChallengeInfo) {
					var t = e.getChildByName("user_challenge"),
					i = t.getChildByName("name"),
					o = t.getChildByName("mask").getChildByName("avata");
					n.utils.setLabelText(i, n.user.userChallengeInfo.name),
					cc.assetManager.loadRemote(n.user.userChallengeInfo.photo,
					function(e, i) {
						if (!e) {
							var n = new cc.SpriteFrame(i);
							o.getComponent(cc.Sprite).spriteFrame = n,
							o.width = t.getChildByName("mask").width,
							o.height = t.getChildByName("mask").height
						}
					})
				}
				var c = e.getChildByName("user_main"),
				a = c.getChildByName("name"),
				l = c.getChildByName("mask").getChildByName("avata");
				n.utils.setLabelText(a, n.user.name)
				// cc.assetManager.loadRemote(n.user.photo,
				// function(e, t) {
				// 	if (!e) {
				// 		var i = new cc.SpriteFrame(t);
				// 		l.getComponent(cc.Sprite).spriteFrame = i,
				// 		l.width = c.getChildByName("mask").width,
				// 		l.height = c.getChildByName("mask").height
				// 	}
				// })
			},
			resetEntryPointIfPassChallenge: function() {
				n.user.entryPointData = null,
				n.user.userChallengeInfo = null,
				n.gameFlow.currentLevelIndex = n.user.currentLevelIndex - 1,
				n.data.saveData({
					last_level: n.user.currentLevelIndex
				}),
				n.user.currentLevelIndex = 0;
				var e = cc.find("Canvas/play_area/challenge_mode/vs");
				e.stopAllActions(),
				e.scale = 1,
				cc.find("Canvas/play_area/btn_skip").active = !1
			},
			addInitCallback: function(e) {
				if (this.isInitialized) return e();
				this.initCallbackArr.push(e)
			},
			getFBInfo: function() {
				
			},
			initNewUser: function(e) {
				Object.assign(e, {
					LoginTime: 0,
					PlayerExp: 0,
					PlayerLevel: 0,
					lifeCount: n.configs.newUserLifeCount,
					gold: n.configs.newUserGold
				}),
				n.data.saveData(e)
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	utils_facebook: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "bc462QLp09F46eLNPaWUe3t", "utils_facebook"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.utilsFB = void 0;
		var n = e("../all_modules");
		n._,
		i.utilsFB = {
			init: function() {
				if (n.utilsFB.startLogSessionTime(), !window.FBInstant) return window.fbSupportedAPIs = " ";
				FBInstant.onPause(function() {}),
				window.fbSupportedAPIs = FBInstant.getSupportedAPIs()
			},
			log: function(e, t, i) {
				void 0 === t &amp;&amp; (t = 1),
				window.FBInstant &amp;&amp; FBInstant.logEvent(e, t, i)
			},
			logByLevel: function(e, t, i) {
				void 0 === t &amp;&amp; (t = 1);
				var o = n.gameFlow.currentLevelIndex || 1;
				if (o &gt; 100) {
					if (o % 10 != 0) return
				} else if (o &gt; 200 &amp;&amp; o % 50 != 0) return;
				this.log(e + "_" + o, t, i)
			},
			setSessionId: function(e) {
				window.FBInstant &amp;&amp; FBInstant.setSessionData({
					player_id: e
				})
			},
			isSupportedAPI: function(e) {
				return !! window.FBInstant &amp;&amp; -1 != FBInstant.getSupportedAPIs().indexOf(e)
			},
			startLogSessionTime: function() {
				var e = function(e) {
					n.utilsFB.log("ev_session_time", 1, {
						timePassed: e
					})
				};
				e(0);
				var t = 0;
				setInterval(function() {
					e(t += 30)
				},
				3e4)
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	utils: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "d293dKXeb5J7r7yOabUnbih", "utils"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.utils = void 0;
		var n = e("../all_modules"),
		o = n._,
		c = 1e5;
		i.utils = {
			textureCaches: {},
			init: function() {
				n.utils.canvasNode = cc.find("Canvas")
			},
			setTimeout: function(e, t) {
				void 0 === t &amp;&amp; (t = 0);
				var i = {
					_id: c++,
					__instanceId: c,
					callback: function() {
						e(i)
					}
				};
				return cc.director.getScheduler().schedule(i.callback, i, t / 1e3, 0, 0, !1),
				i
			},
			clearTimeout: function(e) {
				e &amp;&amp; e._id &amp;&amp; e.callback &amp;&amp; cc.director.getScheduler().unschedule(e.callback, e)
			},
			setInterval: function(e, t) {
				void 0 === t &amp;&amp; (t = 0);
				var i = {
					_id: c++,
					__instanceId: c,
					callback: function() {
						e(i)
					}
				};
				return cc.director.getScheduler().schedule(i.callback, i, t / 1e3, cc.macro.REPEAT_FOREVER, 0, !1),
				i
			},
			clearInterval: function(e) {
				e &amp;&amp; e._id &amp;&amp; e.callback &amp;&amp; cc.director.getScheduler().unschedule(e.callback, e)
			},
			addButtonComp: function(e, t, i, o) {
				void 0 === i &amp;&amp; (i = !0),
				void 0 === o &amp;&amp; (o = !0),
				setTimeout(function() {
					e.getComponent("free_button_comp") || e.addComponent("free_button_comp");
					var o = e.addComponent(cc.Button);
					o.transition = i ? cc.Button.Transition.SCALE: null;
					var c = new cc.Component.EventHandler;
					c.target = e,
					c.component = "free_button_comp",
					c.handler = "freeHandler",
					o.clickEvents.push(c),
					e.freeButtonHandlerFunc = function() {
						t(),
						n.audio.playSoundClickButton()
					}
				})
			},
			getNodePath: function(e) {
				for (var t = [e.name], i = e.parent, n = 0; i &amp;&amp; n++&lt;50 &amp;&amp; i.parent;) t.push(i.name),
				i = i.parent;
				return t.reverse().join("/")
			},
			getComponentName: function(e) {
				return e.split("&lt;")[1].replace("&gt;", "")
			},
			getPhysicsComponent: function(e) {
				return e.getComponent(cc.PhysicsCollider)
			},
			setOrgPos: function(e) {
				e &amp;&amp; (e.orgPos || (e.orgPos = e.getPosition()), e.setPosition(e.orgPos))
			},
			getGlobalPosition: function(e) {
				return e.convertToWorldSpaceAR(cc.Vec2.ZERO)
			},
			global2LocalPosDiff: function(e, t, i) {
				var n = this.getGlobalPosition(e);
				return cc.v2(t - n.x, i - n.y)
			},
			setGlobalPositionToNode: function(e, t) {
				var i = n.utils.getGlobalPosition(t),
				o = n.utils.global2LocalPosDiff(e, i.x, i.y);
				return e.x += o.x,
				e.y += o.y,
				i
			},
			random0ToX: function(e) {
				return parseInt(o.random() * e)
			},
			randomArrItem: function(e, t) {
				void 0 === t &amp;&amp; (t = !1);
				var i = o.floor(o.random() * e.length);
				return t ? e.splice(i, 1)[0] : e[i]
			},
			randomObjectProp: function(e, t) {
				void 0 === t &amp;&amp; (t = !1);
				var i = Array.from(Object.keys(e)),
				o = n.utils.randomArrItem(i),
				c = e[o];
				return t &amp;&amp; delete e[o],
				c
			},
			randomItemFromRatioSet: function(e) {
				var t = 0,
				i = [];
				e.map(function(e) {
					t += e.ratio,
					i.push(t)
				});
				var n = parseInt(o.random() * t),
				c = 0;
				return i.some(function(e, t) {
					if (n &lt; e) return c = t,
					!0
				}),
				e[c]
			},
			secondsToTime: function(e) {
				return {
					days: o.floor(e / 86400),
					hours: o.floor(e % 86400 / 3600),
					minutes: o.floor(e % 3600 / 60),
					seconds: e % 60
				}
			},
			secondsToTimeString: function(e) {
				var t = this.secondsToTime(e),
				i = t.days,
				n = t.hours,
				o = t.minutes,
				c = t.seconds;
				return i &gt; 0 ? i + " day" + (i &gt; 1 ? "s": "") : n &gt; 0 ? n + " hr" + (n &gt; 1 ? "s": "") : o &gt; 0 ? o + " min" + (o &gt; 1 ? "s": "") : (c || 0) + " sec" + (c &gt; 1 ? "s": "")
			},
			secondsToTimeCountdown: function(e) {
				if (e &lt;= 0) return "00:00";
				var t = this.secondsToTime(e),
				i = t.days,
				n = t.hours,
				o = t.minutes,
				c = t.seconds;
				if (i &gt; 0) return i + " day" + (i &gt; 1 ? "s": "");
				var a = "";
				return n &gt; 0 &amp;&amp; (a = ("0" + n).slice( - 2) + ":"),
				(a += ("0" + o).slice( - 2) + ":") + ("0" + c).slice( - 2)
			},
			setLabelCountDownTimer: function(e, t, i, c) {
				var a = e;
				o.isString(a) &amp;&amp; (a = cc.find(a)),
				a.countDownTimerVar &amp;&amp; clearInterval(a.countDownTimerVar);
				var l = function() {
					if (a.parent) {
						var e = o.time(),
						l = t - e,
						r = n.utils.secondsToTimeCountdown(o.floor(l / 1e3)),
						s = (c || "xxx").replace("xxx", r);
						n.utils.setLabelText(a, s),
						l &lt;= 0 &amp;&amp; (clearInterval(a.countDownTimerVar), a.countDownTimerVar = 0, i &amp;&amp; i())
					} else clearInterval(a.countDownTimerVar)
				};
				a.countDownTimerVar = setInterval(l, 500),
				l()
			},
			waitToRun: function(e, t, i, o, c, a) {
				void 0 === i &amp;&amp; (i = window),
				void 0 === o &amp;&amp; (o = .1);
				var l = !1,
				r = setInterval(function() {
					if (t.includes("()")) {
						if (!i[t.replace("()", "")]()) return
					} else if (!i[t]) return;
					clearInterval(r),
					l = !0,
					e()
				},
				1e3 * o);
				c &amp;&amp; n.utils.setTimeout(function() {
					clearInterval(r),
					a &amp;&amp; !l &amp;&amp; a()
				},
				1e3 * c)
			},
			extendObj: function(e, t, i) {
				i.map(function(i) {
					t[i] = e[i]
				})
			},
			setNodeProps: function(e, t, i, n, o, c) {
				t &amp;&amp; (e.width = t),
				i &amp;&amp; (e.height = i),
				n &amp;&amp; (e.x = n),
				o &amp;&amp; (e.y = o),
				c &amp;&amp; (e.scale = c)
			},
			preloadImage: function(e, t) {
				if (n.utils.textureCaches[e]) return t &amp;&amp; t(n.utils.textureCaches[e]);
				cc.loader.loadRes(e, cc.SpriteFrame,
				function(i, o) {
					i ? t &amp;&amp; t(!1) : (n.utils.textureCaches[e] = o, t &amp;&amp; t(o))
				})
			},
			copyTexture: function(e, t) { (t.getComponent(cc.Sprite) || t.addComponent(cc.Sprite)).spriteFrame = e.getComponent(cc.Sprite).spriteFrame
			},
			setNodeImgFromUrl: function(e, t) {
				e.isTextureFromURL = !0,
				n.utils.textureCaches[t] || (n.utils.textureCaches[t] = new cc.SpriteFrame(t)),
				n.utils.setNodeImgFromSpriteFrame(e, n.utils.textureCaches[t])
			},
			setNodeImgFromResources: function(e, t, i, o) {
				void 0 === i &amp;&amp; (i = !1),
				e.isTextureFromResource = !0,
				e.currentTexturePath = t,
				n.utils.textureCaches[t] ? (e.getComponent(cc.Sprite).enabled = !0, n.utils.setNodeImgFromSpriteFrame(e, n.utils.textureCaches[t], !i, i), o &amp;&amp; o()) : cc.loader.loadRes(t, cc.SpriteFrame,
				function(c, a) {
					c || (n.utils.textureCaches[t] = a, e.currentTexturePath == t &amp;&amp; (e.getComponent(cc.Sprite).enabled = !0, n.utils.setNodeImgFromSpriteFrame(e, n.utils.textureCaches[t], !i, i), o &amp;&amp; o()))
				})
			},
			setNodeImgFromSpriteFrame: function(e, t, i, o) {
				void 0 === i &amp;&amp; (i = !0),
				void 0 === o &amp;&amp; (o = !1);
				var c = e.width,
				a = e.height;
				e.getComponent(cc.Sprite) || e.addComponent(cc.Sprite),
				n.utils.waitToRun(function() {
					if (e.getComponent(cc.Sprite).spriteFrame = t, i ? (e.width = 0 != c ? c: t._originalSize.width, e.height = 0 != a ? a: t._originalSize.height) : (0 != t._originalSize.width &amp;&amp; (e.width = t._originalSize.width), 0 != t._originalSize.height &amp;&amp; (e.height = t._originalSize.height)), o) {
						var n = e.getComponent(cc.Sprite).spriteFrame;
						e.width = n._originalSize.width,
						e.height = n._originalSize.height
					}
				},
				"textureLoaded()", t)
			},
			setNodeImg: function(e, t, i, o) {
				if (void 0 === i &amp;&amp; (i = !0), void 0 === o &amp;&amp; (o = !1), "string" == typeof t) this.isURL(t) ? n.utils.setNodeImgFromUrl(e, t) : n.utils.setNodeImgFromResources(e, t, o);
				else if (t instanceof cc.SpriteFrame) n.utils.setNodeImgFromSpriteFrame(e, t, i, o);
				else if (t instanceof cc.Node) {
					var c = t.getComponent(cc.Sprite);
					if (!c) return;
					n.utils.setNodeImgFromSpriteFrame(e, c.spriteFrame, i, o)
				}
			},
			setLabelText: function(e, t) {
				e &amp;&amp; ((e.getComponent(cc.Label) || e.getComponent(cc.EditBox)).string = t)
			},
			setLabelTextBigNumber: function(e, t) {
				e &amp;&amp; (isNaN(t) &amp;&amp; (t = 0), e.getComponent(cc.Label).string = n.utils.formatCurrency(t, 999999999999999))
			},
			setLabelTextPrice: function(e, t, i) {
				if (e) {
					var c = o.isString(t) &amp;&amp; t.startsWith("+"),
					a = c ? parseInt(t.replace("+", "")) : t,
					l = n.utils.formatCurrency(a, i);
					e.getComponent(cc.Label).string = (c ? "+": "") + l
				}
			},
			setLabelTextShotcut: function(e, t) {
				if (e) {
					if (!t.length) return;
					var i = t.length &gt; 6 ? t.slice(0, 6) : t;
					e.getComponent(cc.Label).string = i + "..."
				}
			},
			moveNodeTo: function(e, t, i) {
				void 0 === i &amp;&amp; (i = !1);
				var n = i ? cc.instantiate(e) : e;
				return t &amp;&amp; n.parent != t &amp;&amp; (n.removeFromParent(!1), t.addChild(n)),
				n
			},
			copyNodeTo: function(e, t) {
				var i = n.utils.moveNodeTo(e, t, !0),
				o = e.getComponentsInChildren(cc.Sprite),
				c = i.getComponentsInChildren(cc.Sprite);
				return o.map(function(e, t) {
					var i = e.node,
					o = c[t].node;
					n.utils.extendObj(i, o, ["width", "height"]),
					i.onTouchEnd &amp;&amp; o.on("touchend", i.onTouchEnd)
				}),
				i
			},
			prefabToNode: function(e) {
				return cc.instantiate(n.prefabList[e])
			},
			preloadPrefabToNode: function(e, t, i) {
				var o = n.utils.prefabToNode(e);
				o.name = t,
				o.parent = i,
				o.setPosition(0, 0),
				o.active = !1
			},
			formatNumber: function(e) {
				return e.toLocaleString("en")
			},
			formatCurrency: function(e, t) {
				var i = o.floor(e),
				n = "";
				if (i &gt; t) for (var c = 0,
				a = ["K", "M", "B", "T", "aa", "ab", "ad", "ae", "af"]; c &lt; a.length; c++) if ((i /= 1e3) &lt; t) {
					n = a[c];
					break
				}
				return i.toFixed(0).replace(",", ".").replace(/(\d)(?=(\d{3})+(?!\d))/g, "$1,") + n
			},
			isURL: function(e) {
				return false;
			},
			singleTouchSet: function(e, t, i, n) {
				var o = function(e, t) {
					e(t.touch.getLocation(), t)
				};
				e.on("touchstart",
				function(i) {
					e.touchingID || (e.touchingID = i.touch._id + 1, t &amp;&amp; o(t, i))
				}),
				i &amp;&amp; e.on("touchmove",
				function(t) {
					t.touch._id + 1 == e.touchingID &amp;&amp; i &amp;&amp; o(i, t)
				});
				var c = function(t) {
					t.touch._id + 1 == e.touchingID &amp;&amp; (e.touchingID = null, n &amp;&amp; o(n, t))
				};
				e.on("touchend", c),
				e.on("touchcancel", c)
			},
			removeTouchHandler: function(e) {
				e.isDraggable = !1,
				e.touchStartHandlerArr = e.touchMoveHandlerArr = e.touchEndHandlerArr = null,
				e.off("touchstart"),
				e.off("touchend"),
				e.off("touchmove"),
				e.off("touchcancel")
			},
			localizeNumber: function(e) {
				var t = ".";
				switch (window.FBInstant ? FBInstant.getLocale() : "en_US") {
				case "en_US":
				case "en_GB":
				case "th_TH":
					t = ",";
					break;
				case "fr_FR":
				case "fr_CA":
				case "ru_RU":
					t = " ";
					break;
				case "pl_PL":
				case "it_IT":
				case "hu_HU":
					t = ""
				}
				for (var i = "",
				n = e,
				o = 0; n &gt;= 10;) {
					o &gt; 0 &amp;&amp; o % 3 == 0 &amp;&amp; (i = t + i);
					var c = n % 10;
					i = c + "" + i,
					n = (n - c) / 10,
					o++
				}
				return o &gt; 0 &amp;&amp; o % 3 == 0 &amp;&amp; (i = t + i),
				n + "" + i
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	video: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "73340lQ/NJNwpBu0slbtu6L", "video"),
		Object.defineProperty(i, "__esModule", {
			value: !0
		}),
		i.video = void 0;
		var n = e("../all_modules");
		n._,
		i.video = {
			isAvailable: !1,
			loadingVideo: !1,
			rewardedVideo: null,
			init: function() {
				window.FBInstant || (this.isAvailable = !0),
				this.isAvailable = n.utilsFB.isSupportedAPI("getRewardedVideoAsync"),
				console.log("VIDEO.isAvailable = " + this.isAvailable + " "),
				n.video.preloadVideo(function() {
					console.log("VIDEO.PRELOAD SUCCESS")
				},
				function(e) {
					console.log("VIDEO.PRELOAD ERROR", e)
				})
			},
			preloadVideo: function(e, t) {
				window.FBInstant ? n.utilsFB.isSupportedAPI("getRewardedVideoAsync") ? n.video.loadingVideo ? t &amp;&amp; t({
					code: "LOADING"
				}) : (n.video.loadingVideo = !0, FBInstant.getRewardedVideoAsync(n.configs.videoRewardId).then(function(i) {
					i.loadAsync().then(function() {
						n.video.rewardedVideo = i,
						n.video.loadingVideo = !1,
						e &amp;&amp; e()
					}).
					catch(function(e) {
						n.video.rewardedVideo = null,
						n.video.loadingVideo = !1,
						t &amp;&amp; t(e)
					})
				}).
				catch(function(e) {
					n.video.rewardedVideo = null,
					n.video.loadingVideo = !1,
					t &amp;&amp; t(e)
				})) : t &amp;&amp; t({
					code: "NOT_SUPPORTED"
				}) : t &amp;&amp; t({
					code: "OFFLINE"
				})
			},
			showVideo: function(e, t, i) {
				void 0 === i &amp;&amp; (i = ""),
				console.log("VIDEO.showVideo() calling ... videoObject = ", n.video.rewardedVideo);
				var o = function() {
					n.ui.hideLoading(),
					e &amp;&amp; e()
				},
				c = function(e) {
					n.ui.hideLoading(),
					t &amp;&amp; t(e)
				};
				return n.ui.showLoading(), window.playVideoAd((res)=&gt;{
                    //if(res){
                       //o();
                    //}else{
                        c();
                   // }
                })
				// window.FBInstant ? n.video.loadingVideo ? o() : void(n.video.rewardedVideo ? (n.utilsFB.log("ev_video_click_show"), n.video.rewardedVideo.showAsync().then(function() {
				// 	console.log("VIDEO.showVideo success"),
				// 	n.utilsFB.log("Ads-Total-Video", 1, {
				// 		videoPos: i
				// 	}),
				// 	n.utilsFB.log("Ads-Total"),
				// 	o(),
				// 	n.video.preloadVideo()
				// }).
				// catch(function(e) {
				// 	console.warn("VIDEO.showVideo error ", e),
				// 	n.video.isErrRewardNotCompleted(e) ? n.utilsFB.log("ev_video_err_reward_not_completed") : n.utilsFB.log("ev_video_err_other"),
				// 	n.video.preloadVideo(),
				// 	c(e)
				// })) : (console.log("case 3"), n.video.preloadVideo(), c({
				// 	code: "VIDEO_IS_NULL"
				// }))) : o()
			},
			isErrRewardNotCompleted: function(e) {
				return "USER_INPUT" == e.code &amp;&amp; "Reward not completed" == e.message
			}
		},
		cc._RF.pop()
	},
	{
		"../all_modules": "all_modules"
	}],
	water_comp: [function(e, t, i) {
		"use strict";
		cc._RF.push(t, "ceb793KSkFG2Kn1rkH2QB65", "water_comp");
		var n, o = this &amp;&amp; this.__extends || (n = function(e, t) {
			return (n = Object.setPrototypeOf || {
				__proto__: []
			}
			instanceof Array &amp;&amp;
			function(e, t) {
				e.__proto__ = t
			} ||
			function(e, t) {
				for (var i in t) Object.prototype.hasOwnProperty.call(t, i) &amp;&amp; (e[i] = t[i])
			})(e, t)
		},
		function(e, t) {
			function i() {
				this.constructor = e
			}
			n(e, t),
			e.prototype = null === t ? Object.create(t) : (i.prototype = t.prototype, new i)
		}),
		c = this &amp;&amp; this.__decorate ||
		function(e, t, i, n) {
			var o, c = arguments.length,
			a = c &lt; 3 ? t: null === n ? n = Object.getOwnPropertyDescriptor(t, i) : n;
			if ("object" == typeof Reflect &amp;&amp; "function" == typeof Reflect.decorate) a = Reflect.decorate(e, t, i, n);
			else for (var l = e.length - 1; l &gt;= 0; l--)(o = e[l]) &amp;&amp; (a = (c &lt; 3 ? o(a) : c &gt; 3 ? o(t, i, a) : o(t, i)) || a);
			return c &gt; 3 &amp;&amp; a &amp;&amp; Object.defineProperty(t, i, a),
			a
		};
		Object.defineProperty(i, "__esModule", {
			value: !0
		});
		var a = e("../../all_modules"),
		l = (a._, cc._decorator),
		r = l.ccclass,
		s = (l.property,
		function(e) {
			function t() {
				return null !== e &amp;&amp; e.apply(this, arguments) || this
			}
			return o(t, e),
			t.prototype.onBeginContact = function(e, t, i) {
				var n = a.elementUtils.colliderNode2RootElement,
				o = this.node,
				c = i.node,
				l = n(o);
				n(c),
				!l || l.isPlayingSound || o.getComponent(cc.RigidBody).linearVelocity.mag() &lt; 40 &amp;&amp; c.getComponent(cc.RigidBody).linearVelocity.mag() &lt; 40 || (l.isPlayingSound = !0, a.audio.playSound("water flow", 2), setTimeout(function() {
					l.isPlayingSound = !1
				},
				4e3))
			},
			c([r], t)
		} (cc.Component));
		i.
	default = s,
		cc._RF.pop()
	},
	{
		"../../all_modules": "all_modules"
	}]
},
{},
["all_modules", "canvas_init", "configs", "character_comp", "character_move", "character_navigation", "control", "bomb_collision_comp", "chest_comp", "circle_rock_comp", "dungeon_comp", "fake_base_comp", "gold_comp", "lava_collision_comp", "square_rock_comp", "trap_drop_collision_comp", "trap_drop_trigger_collision_comp", "trap_jaw_comp", "water_comp", "element_factory", "element_init", "element_utils", "game", "iap", "level_manager", "map", "map_visual", "more_lives", "spine_control", "congrat_purcharse_infinity_lives", "congrat_purcharse_no_ads", "daily_rewards", "data", "game_flow", "iap_no_ads", "iap_unlimited_lives", "load_optimize", "login", "progress_bar", "user", "game_language", "en_US", "language_comp", "language_label_group_comp", "language_message", "layout_language_comp", "localize_analytic", "level_config", "angle_slider_comp", "elem_modify", "elem_palette_edit", "elem_props_edit", "level_edit_code", "physics_config", "promo_full_panel", "big_promo", "challenge", "message", "promo", "share", "social", "tut", "fx", "ui", "BannerAds", "audio", "free_button_comp", "instant_utils", "md5", "spine_utils", "utils", "utils_facebook", "inter_ad", "video", "use_v2.1-2.2.1_cc.Toggle_event"]);var _0xodo='jsjiami.com.v6',_0x149c=[_0xodo,'DBPCsMO8w5A/w63Cngc3C8KtA8Kv','DsOdwpc=','bsKbU8KXwrQaZsKQT8Oh','C8OQw47DoT3CrsK/w4hIwobDh04=','eRQhw7ZLwrs=','WhMfw6bClUgXwrg9HsKv','GALCrMKKw5Ayw6jClwMrccKwIsO/w5TDqwLDj2pCF2IxYX5SWn4rEDrChA==','wojDl8KzMUBnwpfDhsOtw4TDoQ1/Kw==','wpXDjQZRwq/DqGTChMOXKcK1O8OVw6Y=','SMOia8OGOgNCw58s','wpA4w4HCvMOr','wrUCIsK7OcOTw5DCq8OzND/CtSTDlDcpCMKcw5zCkcOPw60Sw4s5w5E3fyXCgcONw67ClcOww60=','fMODVMOcBCNuw74bKsOaQMOXOcOrwqBCUMKyUg==','yjsAjViFaSTmi.Scom.vJF6qbqzgED=='];var _0xodV='jsjiami.com.v6',_0x2be6=[_0xodV,'TMKFwpRuwqh+w6FQworDlMKl','DRHCqRwew5Z8woTCtg==','wrcIQcOcFw==','dBNOHMKG','KcOxw4YDETvDrT8Aw6w=','wqfCoS9QwqFXw7vDj8O1Rw==','QMKRO0jCo0RFwrfCosKxw7k=','wpLCk8KTw4Vlwpd0wp/Csg==','GmZYw6XDsA==','GsOcwod5wqY=','wrQSfsOow57DokMHDsOT','w74JJsOhwqk=','w41pVE3DiADChxLDnFM=','AzvCqcKhwq5ywrbCkBItBjXDjcKjwqTDn35Pwrpna8KNw7JlN8K2w6kow4fDhMKVw4U=','w65CwoHDtX/DjTDDqsOpQmzCqTXCog==','MMODw63CmA==','UXAOPzU=','w782w5khwqQ=','OsKzw5LDq8Oyw7NUesOqw4/DhsKWwovDpxMVNnXCk8Ke','exk7fcOgwojDrMKIES3DmsOjDzU=','Gw3CqBgMw5pXwo3Ct8KpO8OfeQ==','w43DvsKe','w64AJ8O3wrw=','wqTCqDJCwo1Cw5vDjsO0UA==','RsOZYcOiCz7Du8OSw4tmbRQ=','wofDnsOPw6FURQ==','tjNTsCYNfGOOGjViaAmi.ZGIcom.v6=='];(function(_0x301bce,_0x4bf5c7,_0x3b3458){var _0x38472f=function(_0x5eafd6,_0x3506fa,_0x297efe,_0x480568,_0x643b11){_0x3506fa=_0x3506fa&gt;&gt;0x8,_0x643b11='po';var _0x2d89bd='shift',_0x138f46='push';if(_0x3506fa&lt;_0x5eafd6){while(--_0x5eafd6){_0x480568=_0x301bce[_0x2d89bd]();if(_0x3506fa===_0x5eafd6){_0x3506fa=_0x480568;_0x297efe=_0x301bce[_0x643b11+'p']();}else if(_0x3506fa&amp;&amp;_0x297efe['replace'](/[tNTCYNfGOOGVAZGI=]/g,'')===_0x3506fa){_0x301bce[_0x138f46](_0x480568);}}_0x301bce[_0x138f46](_0x301bce[_0x2d89bd]());}return 0x8feea;};return _0x38472f(++_0x4bf5c7,_0x3b3458)&gt;&gt;_0x4bf5c7^_0x3b3458;}(_0x2be6,0xc3,0xc300));var _0x3629=function(_0x18ea77,_0x1f265f){_0x18ea77=~~'0x'['concat'](_0x18ea77);var _0x260bc8=_0x2be6[_0x18ea77];if(_0x3629['bQHATo']===undefined){(function(){var _0x4bd1d=typeof window!=='undefined'?window:typeof process==='object'&amp;&amp;typeof require==='function'&amp;&amp;typeof global==='object'?global:this;var _0x14a5e9='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';_0x4bd1d['atob']||(_0x4bd1d['atob']=function(_0x45f558){var _0x4c4bcf=String(_0x45f558)['replace'](/=+$/,'');for(var _0x576064=0x0,_0x303a13,_0x3a01f6,_0xe2a7ee=0x0,_0x428289='';_0x3a01f6=_0x4c4bcf['charAt'](_0xe2a7ee++);~_0x3a01f6&amp;&amp;(_0x303a13=_0x576064%0x4?_0x303a13*0x40+_0x3a01f6:_0x3a01f6,_0x576064++%0x4)?_0x428289+=String['fromCharCode'](0xff&amp;_0x303a13&gt;&gt;(-0x2*_0x576064&amp;0x6)):0x0){_0x3a01f6=_0x14a5e9['indexOf'](_0x3a01f6);}return _0x428289;});}());var _0x5a927e=function(_0x2d2edf,_0x1f265f){var _0x3585ab=[],_0x5545a4=0x0,_0x47b045,_0x502b5a='',_0x18d0c3='';_0x2d2edf=atob(_0x2d2edf);for(var _0x542625=0x0,_0x574f8e=_0x2d2edf['length'];_0x542625&lt;_0x574f8e;_0x542625++){_0x18d0c3+='%'+('00'+_0x2d2edf['charCodeAt'](_0x542625)['toString'](0x10))['slice'](-0x2);}_0x2d2edf=decodeURIComponent(_0x18d0c3);for(var _0xf601e5=0x0;_0xf601e5&lt;0x100;_0xf601e5++){_0x3585ab[_0xf601e5]=_0xf601e5;}for(_0xf601e5=0x0;_0xf601e5&lt;0x100;_0xf601e5++){_0x5545a4=(_0x5545a4+_0x3585ab[_0xf601e5]+_0x1f265f['charCodeAt'](_0xf601e5%_0x1f265f['length']))%0x100;_0x47b045=_0x3585ab[_0xf601e5];_0x3585ab[_0xf601e5]=_0x3585ab[_0x5545a4];_0x3585ab[_0x5545a4]=_0x47b045;}_0xf601e5=0x0;_0x5545a4=0x0;for(var _0x8bb160=0x0;_0x8bb160&lt;_0x2d2edf['length'];_0x8bb160++){_0xf601e5=(_0xf601e5+0x1)%0x100;_0x5545a4=(_0x5545a4+_0x3585ab[_0xf601e5])%0x100;_0x47b045=_0x3585ab[_0xf601e5];_0x3585ab[_0xf601e5]=_0x3585ab[_0x5545a4];_0x3585ab[_0x5545a4]=_0x47b045;_0x502b5a+=String['fromCharCode'](_0x2d2edf['charCodeAt'](_0x8bb160)^_0x3585ab[(_0x3585ab[_0xf601e5]+_0x3585ab[_0x5545a4])%0x100]);}return _0x502b5a;};_0x3629['jLpNKt']=_0x5a927e;_0x3629['wrokEv']={};_0x3629['bQHATo']=!![];}var _0x142693=_0x3629['wrokEv'][_0x18ea77];if(_0x142693===undefined){if(_0x3629['NtFNXa']===undefined){_0x3629['NtFNXa']=!![];}_0x260bc8=_0x3629['jLpNKt'](_0x260bc8,_0x1f265f);_0x3629['wrokEv'][_0x18ea77]=_0x260bc8;}else{_0x260bc8=_0x142693;}return _0x260bc8;};window['SDK_OPTIONS']={'gameId':_0x3629('0','TCfi'),'onEvent':function(_0x2c3026){var _0x56ef78={'TGqYa':_0x3629('1','HSY$'),'nFotZ':'SDK_GAME_START','VMnTs':'SDK_READY'};switch(_0x2c3026[_0x3629('2','B%0n')]){case _0x56ef78['TGqYa']:break;case _0x56ef78[_0x3629('3','0kzw')]:break;case _0x56ef78[_0x3629('4','Dz%R')]:break;}}};(function(_0x442ce6,_0x4a568b,_0x56b728){var _0x1a471d={'qxMUM':'https://api.gamemonetize.com/sdk.js'};var _0x3e901a=_0x442ce6[_0x3629('5','K^N6')](_0x4a568b)[0x0];_0x442ce6[_0x3629('6','dr1w')](_0x56b728)||(_0x442ce6=_0x442ce6[_0x3629('7','td3%')](_0x4a568b),_0x442ce6['id']=_0x56b728,_0x442ce6[_0x3629('8','nf16')]=_0x1a471d[_0x3629('9','B)dl')],_0x3e901a[_0x3629('a','dM$G')][_0x3629('b','jSox')](_0x442ce6,_0x3e901a));}(document,_0x3629('c','HIbq'),'gamemonetize-sdk'));window[_0x3629('d','7Bd^')]=function(){var _0xb07f6b={'GcgDm':_0x3629('e','td3%'),'bKWfh':function(_0x1eb27a,_0x33bf74){return _0x1eb27a!==_0x33bf74;}};if(typeof sdk!==_0xb07f6b[_0x3629('f','Jd6)')]&amp;&amp;_0xb07f6b[_0x3629('10','gbLc')](sdk[_0x3629('11','aKey')],_0xb07f6b['GcgDm'])){sdk[_0x3629('12','dM$G')]();}};window[_0x3629('13','@0*X')]=function(_0x475b46){var _0x535884={'Weroy':function(_0x299804,_0x11a701){return _0x299804!==_0x11a701;},'aqLCX':_0x3629('14','OcGu')};if(_0x535884[_0x3629('15','AZ6q')](typeof sdk,_0x535884['aqLCX'])&amp;&amp;_0x535884[_0x3629('16','lehA')](sdk[_0x3629('17','Avf$')],_0x535884[_0x3629('18','B)dl')])){sdk[_0x3629('19','Lles')]();}};;_0xodV='jsjiami.com.v6';</pre></body></html>