// Generated by Construct 2, the HTML5 game and app creator :: http://www.scirra.com
var cr = {};
cr.plugins_ = {};
cr.behaviors = {};
if (typeof Object.getPrototypeOf !== "function")
{
	if (typeof "test".__proto__ === "object")
	{
		Object.getPrototypeOf = function(object) {
			return object.__proto__;
		};
	}
	else
	{
		Object.getPrototypeOf = function(object) {
			return object.constructor.prototype;
		};
	}
}
(function(){
	cr.logexport = function (msg)
	{
		if (window.console && window.console.log)
			window.console.log(msg);
	};
	cr.seal = function(x)
	{
		return x;
	};
	cr.freeze = function(x)
	{
		return x;
	};
	cr.is_undefined = function (x)
	{
		return typeof x === "undefined";
	};
	cr.is_number = function (x)
	{
		return typeof x === "number";
	};
	cr.is_string = function (x)
	{
		return typeof x === "string";
	};
	cr.isPOT = function (x)
	{
		return x > 0 && ((x - 1) & x) === 0;
	};
	cr.nextHighestPowerOfTwo = function(x) {
		--x;
		for (var i = 1; i < 32; i <<= 1) {
			x = x | x >> i;
		}
		return x + 1;
	}
	cr.abs = function (x)
	{
		return (x < 0 ? -x : x);
	};
	cr.max = function (a, b)
	{
		return (a > b ? a : b);
	};
	cr.min = function (a, b)
	{
		return (a < b ? a : b);
	};
	cr.PI = Math.PI;
	cr.round = function (x)
	{
		return (x + 0.5) | 0;
	};
	cr.floor = function (x)
	{
		if (x >= 0)
			return x | 0;
		else
			return (x | 0) - 1;		// correctly round down when negative
	};
	cr.ceil = function (x)
	{
		var f = x | 0;
		return (f === x ? f : f + 1);
	};
	function Vector2(x, y)
	{
		this.x = x;
		this.y = y;
		cr.seal(this);
	};
	Vector2.prototype.offset = function (px, py)
	{
		this.x += px;
		this.y += py;
		return this;
	};
	Vector2.prototype.mul = function (px, py)
	{
		this.x *= px;
		this.y *= py;
		return this;
	};
	cr.vector2 = Vector2;
	cr.segments_intersect = function(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y)
	{
		var max_ax, min_ax, max_ay, min_ay, max_bx, min_bx, max_by, min_by;
		if (a1x < a2x)
		{
			min_ax = a1x;
			max_ax = a2x;
		}
		else
		{
			min_ax = a2x;
			max_ax = a1x;
		}
		if (b1x < b2x)
		{
			min_bx = b1x;
			max_bx = b2x;
		}
		else
		{
			min_bx = b2x;
			max_bx = b1x;
		}
		if (max_ax < min_bx || min_ax > max_bx)
			return false;
		if (a1y < a2y)
		{
			min_ay = a1y;
			max_ay = a2y;
		}
		else
		{
			min_ay = a2y;
			max_ay = a1y;
		}
		if (b1y < b2y)
		{
			min_by = b1y;
			max_by = b2y;
		}
		else
		{
			min_by = b2y;
			max_by = b1y;
		}
		if (max_ay < min_by || min_ay > max_by)
			return false;
		var dpx = b1x - a1x + b2x - a2x;
		var dpy = b1y - a1y + b2y - a2y;
		var qax = a2x - a1x;
		var qay = a2y - a1y;
		var qbx = b2x - b1x;
		var qby = b2y - b1y;
		var d = cr.abs(qay * qbx - qby * qax);
		var la = qbx * dpy - qby * dpx;
		if (cr.abs(la) > d)
			return false;
		var lb = qax * dpy - qay * dpx;
		return cr.abs(lb) <= d;
	};
	function Rect(left, top, right, bottom)
	{
		this.set(left, top, right, bottom);
		cr.seal(this);
	};
	Rect.prototype.set = function (left, top, right, bottom)
	{
		this.left = left;
		this.top = top;
		this.right = right;
		this.bottom = bottom;
	};
	Rect.prototype.copy = function (r)
	{
		this.left = r.left;
		this.top = r.top;
		this.right = r.right;
		this.bottom = r.bottom;
	};
	Rect.prototype.width = function ()
	{
		return this.right - this.left;
	};
	Rect.prototype.height = function ()
	{
		return this.bottom - this.top;
	};
	Rect.prototype.offset = function (px, py)
	{
		this.left += px;
		this.top += py;
		this.right += px;
		this.bottom += py;
		return this;
	};
	Rect.prototype.normalize = function ()
	{
		var temp = 0;
		if (this.left > this.right)
		{
			temp = this.left;
			this.left = this.right;
			this.right = temp;
		}
		if (this.top > this.bottom)
		{
			temp = this.top;
			this.top = this.bottom;
			this.bottom = temp;
		}
	};
	Rect.prototype.intersects_rect = function (rc)
	{
		return !(rc.right < this.left || rc.bottom < this.top || rc.left > this.right || rc.top > this.bottom);
	};
	Rect.prototype.intersects_rect_off = function (rc, ox, oy)
	{
		return !(rc.right + ox < this.left || rc.bottom + oy < this.top || rc.left + ox > this.right || rc.top + oy > this.bottom);
	};
	Rect.prototype.contains_pt = function (x, y)
	{
		return (x >= this.left && x <= this.right) && (y >= this.top && y <= this.bottom);
	};
	Rect.prototype.equals = function (r)
	{
		return this.left === r.left && this.top === r.top && this.right === r.right && this.bottom === r.bottom;
	};
	cr.rect = Rect;
	function Quad()
	{
		this.tlx = 0;
		this.tly = 0;
		this.trx = 0;
		this.try_ = 0;	// is a keyword otherwise!
		this.brx = 0;
		this.bry = 0;
		this.blx = 0;
		this.bly = 0;
		cr.seal(this);
	};
	Quad.prototype.set_from_rect = function (rc)
	{
		this.tlx = rc.left;
		this.tly = rc.top;
		this.trx = rc.right;
		this.try_ = rc.top;
		this.brx = rc.right;
		this.bry = rc.bottom;
		this.blx = rc.left;
		this.bly = rc.bottom;
	};
	Quad.prototype.set_from_rotated_rect = function (rc, a)
	{
		if (a === 0)
		{
			this.set_from_rect(rc);
		}
		else
		{
			var sin_a = Math.sin(a);
			var cos_a = Math.cos(a);
			var left_sin_a = rc.left * sin_a;
			var top_sin_a = rc.top * sin_a;
			var right_sin_a = rc.right * sin_a;
			var bottom_sin_a = rc.bottom * sin_a;
			var left_cos_a = rc.left * cos_a;
			var top_cos_a = rc.top * cos_a;
			var right_cos_a = rc.right * cos_a;
			var bottom_cos_a = rc.bottom * cos_a;
			this.tlx = left_cos_a - top_sin_a;
			this.tly = top_cos_a + left_sin_a;
			this.trx = right_cos_a - top_sin_a;
			this.try_ = top_cos_a + right_sin_a;
			this.brx = right_cos_a - bottom_sin_a;
			this.bry = bottom_cos_a + right_sin_a;
			this.blx = left_cos_a - bottom_sin_a;
			this.bly = bottom_cos_a + left_sin_a;
		}
	};
	Quad.prototype.offset = function (px, py)
	{
		this.tlx += px;
		this.tly += py;
		this.trx += px;
		this.try_ += py;
		this.brx += px;
		this.bry += py;
		this.blx += px;
		this.bly += py;
		return this;
	};
	var minresult = 0;
	var maxresult = 0;
	function minmax4(a, b, c, d)
	{
		if (a < b)
		{
			if (c < d)
			{
				if (a < c)
					minresult = a;
				else
					minresult = c;
				if (b > d)
					maxresult = b;
				else
					maxresult = d;
			}
			else
			{
				if (a < d)
					minresult = a;
				else
					minresult = d;
				if (b > c)
					maxresult = b;
				else
					maxresult = c;
			}
		}
		else
		{
			if (c < d)
			{
				if (b < c)
					minresult = b;
				else
					minresult = c;
				if (a > d)
					maxresult = a;
				else
					maxresult = d;
			}
			else
			{
				if (b < d)
					minresult = b;
				else
					minresult = d;
				if (a > c)
					maxresult = a;
				else
					maxresult = c;
			}
		}
	};
	Quad.prototype.bounding_box = function (rc)
	{
		minmax4(this.tlx, this.trx, this.brx, this.blx);
		rc.left = minresult;
		rc.right = maxresult;
		minmax4(this.tly, this.try_, this.bry, this.bly);
		rc.top = minresult;
		rc.bottom = maxresult;
	};
	Quad.prototype.contains_pt = function (x, y)
	{
		var v0x = this.trx - this.tlx;
		var v0y = this.try_ - this.tly;
		var v1x = this.brx - this.tlx;
		var v1y = this.bry - this.tly;
		var v2x = x - this.tlx;
		var v2y = y - this.tly;
		var dot00 = v0x * v0x + v0y * v0y
		var dot01 = v0x * v1x + v0y * v1y
		var dot02 = v0x * v2x + v0y * v2y
		var dot11 = v1x * v1x + v1y * v1y
		var dot12 = v1x * v2x + v1y * v2y
		var invDenom = 1.0 / (dot00 * dot11 - dot01 * dot01);
		var u = (dot11 * dot02 - dot01 * dot12) * invDenom;
		var v = (dot00 * dot12 - dot01 * dot02) * invDenom;
		if ((u >= 0.0) && (v > 0.0) && (u + v < 1))
			return true;
		v0x = this.blx - this.tlx;
		v0y = this.bly - this.tly;
		var dot00 = v0x * v0x + v0y * v0y
		var dot01 = v0x * v1x + v0y * v1y
		var dot02 = v0x * v2x + v0y * v2y
		invDenom = 1.0 / (dot00 * dot11 - dot01 * dot01);
		u = (dot11 * dot02 - dot01 * dot12) * invDenom;
		v = (dot00 * dot12 - dot01 * dot02) * invDenom;
		return (u >= 0.0) && (v > 0.0) && (u + v < 1);
	};
	Quad.prototype.at = function (i, xory)
	{
		if (xory)
		{
			switch (i)
			{
				case 0: return this.tlx;
				case 1: return this.trx;
				case 2: return this.brx;
				case 3: return this.blx;
				case 4: return this.tlx;
				default: return this.tlx;
			}
		}
		else
		{
			switch (i)
			{
				case 0: return this.tly;
				case 1: return this.try_;
				case 2: return this.bry;
				case 3: return this.bly;
				case 4: return this.tly;
				default: return this.tly;
			}
		}
	};
	Quad.prototype.midX = function ()
	{
		return (this.tlx + this.trx  + this.brx + this.blx) / 4;
	};
	Quad.prototype.midY = function ()
	{
		return (this.tly + this.try_ + this.bry + this.bly) / 4;
	};
	Quad.prototype.intersects_segment = function (x1, y1, x2, y2)
	{
		if (this.contains_pt(x1, y1) || this.contains_pt(x2, y2))
			return true;
		var a1x, a1y, a2x, a2y;
		var i;
		for (i = 0; i < 4; i++)
		{
			a1x = this.at(i, true);
			a1y = this.at(i, false);
			a2x = this.at(i + 1, true);
			a2y = this.at(i + 1, false);
			if (cr.segments_intersect(x1, y1, x2, y2, a1x, a1y, a2x, a2y))
				return true;
		}
		return false;
	};
	Quad.prototype.intersects_quad = function (rhs)
	{
		var midx = rhs.midX();
		var midy = rhs.midY();
		if (this.contains_pt(midx, midy))
			return true;
		midx = this.midX();
		midy = this.midY();
		if (rhs.contains_pt(midx, midy))
			return true;
		var a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y;
		var i, j;
		for (i = 0; i < 4; i++)
		{
			for (j = 0; j < 4; j++)
			{
				a1x = this.at(i, true);
				a1y = this.at(i, false);
				a2x = this.at(i + 1, true);
				a2y = this.at(i + 1, false);
				b1x = rhs.at(j, true);
				b1y = rhs.at(j, false);
				b2x = rhs.at(j + 1, true);
				b2y = rhs.at(j + 1, false);
				if (cr.segments_intersect(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y))
					return true;
			}
		}
		return false;
	};
	cr.quad = Quad;
	cr.RGB = function (red, green, blue)
	{
		return Math.max(Math.min(red, 255), 0)
			 | (Math.max(Math.min(green, 255), 0) << 8)
			 | (Math.max(Math.min(blue, 255), 0) << 16);
	};
	cr.GetRValue = function (rgb)
	{
		return rgb & 0xFF;
	};
	cr.GetGValue = function (rgb)
	{
		return (rgb & 0xFF00) >> 8;
	};
	cr.GetBValue = function (rgb)
	{
		return (rgb & 0xFF0000) >> 16;
	};
	cr.shallowCopy = function (a, b, allowOverwrite)
	{
		var attr;
		for (attr in b)
		{
			if (b.hasOwnProperty(attr))
			{
;
				a[attr] = b[attr];
			}
		}
		return a;
	};
	cr.arrayRemove = function (arr, index)
	{
		var i, len;
		index = cr.floor(index);
		if (index < 0 || index >= arr.length)
			return;							// index out of bounds
		if (index === 0)					// removing first item
			arr.shift();
		else if (index === arr.length - 1)	// removing last item
			arr.pop();
		else
		{
			for (i = index, len = arr.length - 1; i < len; i++)
				arr[i] = arr[i + 1];
			arr.length = len;
		}
	};
	cr.shallowAssignArray = function (dest, src)
	{
		dest.length = src.length;
		var i, len;
		for (i = 0, len = src.length; i < len; i++)
			dest[i] = src[i];
	};
	cr.appendArray = function (a, b)
	{
		a.push.apply(a, b);
	};
	cr.arrayFindRemove = function (arr, item)
	{
		var index = arr.indexOf(item);
		if (index !== -1)
			cr.arrayRemove(arr, index);
	};
	cr.clamp = function(x, a, b)
	{
		if (x < a)
			return a;
		else if (x > b)
			return b;
		else
			return x;
	};
	cr.to_radians = function(x)
	{
		return x / (180.0 / cr.PI);
	};
	cr.to_degrees = function(x)
	{
		return x * (180.0 / cr.PI);
	};
	cr.clamp_angle_degrees = function (a)
	{
		a %= 360;       // now in (-360, 360) range
		if (a < 0)
			a += 360;   // now in [0, 360) range
		return a;
	};
	cr.clamp_angle = function (a)
	{
		a %= 2 * cr.PI;       // now in (-2pi, 2pi) range
		if (a < 0)
			a += 2 * cr.PI;   // now in [0, 2pi) range
		return a;
	};
	cr.to_clamped_degrees = function (x)
	{
		return cr.clamp_angle_degrees(cr.to_degrees(x));
	};
	cr.to_clamped_radians = function (x)
	{
		return cr.clamp_angle(cr.to_radians(x));
	};
	cr.angleTo = function(x1, y1, x2, y2)
	{
		var dx = x2 - x1;
        var dy = y2 - y1;
		return Math.atan2(dy, dx);
	};
	cr.angleDiff = function (a1, a2)
	{
		if (a1 === a2)
			return 0;
		var s1 = Math.sin(a1);
		var c1 = Math.cos(a1);
		var s2 = Math.sin(a2);
		var c2 = Math.cos(a2);
		var n = s1 * s2 + c1 * c2;
		if (n >= 1)
			return 0;
		if (n <= -1)
			return cr.PI;
		return Math.acos(n);
	};
	cr.angleRotate = function (start, end, step)
	{
		var ss = Math.sin(start);
		var cs = Math.cos(start);
		var se = Math.sin(end);
		var ce = Math.cos(end);
		if (Math.acos(ss * se + cs * ce) > step)
		{
			if (cs * se - ss * ce > 0)
				return cr.clamp_angle(start + step);
			else
				return cr.clamp_angle(start - step);
		}
		else
			return cr.clamp_angle(end);
	};
	cr.angleClockwise = function (a1, a2)
	{
		var s1 = Math.sin(a1);
		var c1 = Math.cos(a1);
		var s2 = Math.sin(a2);
		var c2 = Math.cos(a2);
		return c1 * s2 - s1 * c2 <= 0;
	};
	cr.rotatePtAround = function (px, py, a, ox, oy, getx)
	{
		if (a === 0)
			return getx ? px : py;
		var sin_a = Math.sin(a);
		var cos_a = Math.cos(a);
		px -= ox;
		py -= oy;
		var left_sin_a = px * sin_a;
		var top_sin_a = py * sin_a;
		var left_cos_a = px * cos_a;
		var top_cos_a = py * cos_a;
		px = left_cos_a - top_sin_a;
		py = top_cos_a + left_sin_a;
		px += ox;
		py += oy;
		return getx ? px : py;
	}
	cr.distanceTo = function(x1, y1, x2, y2)
	{
		var dx = x2 - x1;
        var dy = y2 - y1;
		return Math.sqrt(dx*dx + dy*dy);
	};
	cr.xor = function (x, y)
	{
		return !x !== !y;
	};
	cr.lerp = function (a, b, x)
	{
		return a + (b - a) * x;
	};
	cr.unlerp = function (a, b, c)
	{
		if (a === b)
			return 0;		// avoid divide by 0
		return (c - a) / (b - a);
	};
	cr.anglelerp = function (a, b, x)
	{
		var diff = cr.angleDiff(a, b);
		if (cr.angleClockwise(b, a))
		{
			return a + diff * x;
		}
		else
		{
			return a - diff * x;
		}
	};
	cr.hasAnyOwnProperty = function (o)
	{
		var p;
		for (p in o)
		{
			if (o.hasOwnProperty(p))
				return true;
		}
		return false;
	};
	cr.wipe = function (obj)
	{
		var p;
		for (p in obj)
		{
			if (obj.hasOwnProperty(p))
				delete obj[p];
		}
	};
	var startup_time = +(new Date());
	cr.performance_now = function()
	{
		if (typeof window["performance"] !== "undefined")
		{
			var winperf = window["performance"];
			if (typeof winperf.now !== "undefined")
				return winperf.now();
			else if (typeof winperf["webkitNow"] !== "undefined")
				return winperf["webkitNow"]();
			else if (typeof winperf["mozNow"] !== "undefined")
				return winperf["mozNow"]();
			else if (typeof winperf["msNow"] !== "undefined")
				return winperf["msNow"]();
		}
		return Date.now() - startup_time;
	};
	var supports_set = (typeof Set !== "undefined" && typeof Set.prototype["forEach"] !== "undefined");
	function ObjectSet_()
	{
		this.s = null;
		this.items = null;
		this.item_count = 0;
		if (supports_set)
		{
			this.s = new Set();
		}
		else
		{
			this.items = {};
		}
		this.values_cache = [];
		this.cache_valid = true;
		cr.seal(this);
	};
	ObjectSet_.prototype.contains = function (x)
	{
		if (supports_set)
			return this.s["has"](x);
		else
			return this.items.hasOwnProperty(x.toString());
	};
	ObjectSet_.prototype.add = function (x)
	{
		if (supports_set)
		{
			if (!this.s["has"](x))
			{
				this.s["add"](x);
				this.cache_valid = false;
			}
		}
		else
		{
			var str = x.toString();
			if (!this.items.hasOwnProperty(str))
			{
				this.items[str] = x;
				this.item_count++;
				this.cache_valid = false;
			}
		}
		return this;
	};
	ObjectSet_.prototype.remove = function (x)
	{
		if (supports_set)
		{
			if (this.s["has"](x))
			{
				this.s["delete"](x);
				this.cache_valid = false;
			}
		}
		else
		{
			var str = x.toString();
			if (this.items.hasOwnProperty(str))
			{
				delete this.items[str];
				this.item_count--;
				this.cache_valid = false;
			}
		}
		return this;
	};
	ObjectSet_.prototype.clear = function ()
	{
		if (supports_set)
		{
			this.s["clear"]();
		}
		else
		{
			this.items = {};
			this.item_count = 0;
		}
		this.values_cache.length = 0;
		this.cache_valid = true;
		return this;
	};
	ObjectSet_.prototype.isEmpty = function ()
	{
		if (supports_set)
			return this.s["size"] === 0;
		else
			return this.item_count === 0;
	};
	ObjectSet_.prototype.count = function ()
	{
		if (supports_set)
			return this.s["size"];
		else
			return this.item_count;
	};
	var current_arr = null;
	var current_index = 0;
	function set_append_to_arr(x)
	{
		current_arr[current_index++] = x;
	};
	ObjectSet_.prototype.update_cache = function ()
	{
		if (this.cache_valid)
			return;
		if (supports_set)
		{
			this.values_cache.length = this.s["size"];
			current_arr = this.values_cache;
			current_index = 0;
			this.s["forEach"](set_append_to_arr);
;
			current_arr = null;
			current_index = 0;
		}
		else
		{
			this.values_cache.length = this.item_count;
			var p, n = 0;
			for (p in this.items)
			{
				if (this.items.hasOwnProperty(p))
					this.values_cache[n++] = this.items[p];
			}
;
		}
		this.cache_valid = true;
	};
	ObjectSet_.prototype.values = function ()
	{
		this.update_cache();
		return this.values_cache.slice(0);
	};
	ObjectSet_.prototype.valuesRef = function ()
	{
		this.update_cache();
		return this.values_cache;
	};
	cr.ObjectSet = ObjectSet_;
	function KahanAdder_()
	{
		this.c = 0;
        this.y = 0;
        this.t = 0;
        this.sum = 0;
		cr.seal(this);
	};
	KahanAdder_.prototype.add = function (v)
	{
		this.y = v - this.c;
	    this.t = this.sum + this.y;
	    this.c = (this.t - this.sum) - this.y;
	    this.sum = this.t;
	};
    KahanAdder_.prototype.reset = function ()
    {
        this.c = 0;
        this.y = 0;
        this.t = 0;
        this.sum = 0;
    };
	cr.KahanAdder = KahanAdder_;
	cr.regexp_escape = function(text)
	{
		return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
	};
	function CollisionPoly_(pts_array_)
	{
		this.pts_cache = [];
		this.bboxLeft = 0;
		this.bboxTop = 0;
		this.bboxRight = 0;
		this.bboxBottom = 0;
		this.convexpolys = null;		// for physics behavior to cache separated polys
		this.set_pts(pts_array_);
		cr.seal(this);
	};
	CollisionPoly_.prototype.set_pts = function(pts_array_)
	{
		this.pts_array = pts_array_;
		this.pts_count = pts_array_.length / 2;			// x, y, x, y... in array
		this.pts_cache.length = pts_array_.length;
		this.cache_width = -1;
		this.cache_height = -1;
		this.cache_angle = 0;
	};
	CollisionPoly_.prototype.is_empty = function()
	{
		return !this.pts_array.length;
	};
	CollisionPoly_.prototype.update_bbox = function ()
	{
		var myptscache = this.pts_cache;
		var bboxLeft_ = myptscache[0];
		var bboxRight_ = bboxLeft_;
		var bboxTop_ = myptscache[1];
		var bboxBottom_ = bboxTop_;
		var x, y, i = 1, i2, len = this.pts_count;
		for ( ; i < len; ++i)
		{
			i2 = i*2;
			x = myptscache[i2];
			y = myptscache[i2+1];
			if (x < bboxLeft_)
				bboxLeft_ = x;
			if (x > bboxRight_)
				bboxRight_ = x;
			if (y < bboxTop_)
				bboxTop_ = y;
			if (y > bboxBottom_)
				bboxBottom_ = y;
		}
		this.bboxLeft = bboxLeft_;
		this.bboxRight = bboxRight_;
		this.bboxTop = bboxTop_;
		this.bboxBottom = bboxBottom_;
	};
	CollisionPoly_.prototype.set_from_rect = function(rc, offx, offy)
	{
		this.pts_cache.length = 8;
		this.pts_count = 4;
		var myptscache = this.pts_cache;
		myptscache[0] = rc.left - offx;
		myptscache[1] = rc.top - offy;
		myptscache[2] = rc.right - offx;
		myptscache[3] = rc.top - offy;
		myptscache[4] = rc.right - offx;
		myptscache[5] = rc.bottom - offy;
		myptscache[6] = rc.left - offx;
		myptscache[7] = rc.bottom - offy;
		this.cache_width = rc.right - rc.left;
		this.cache_height = rc.bottom - rc.top;
		this.update_bbox();
	};
	CollisionPoly_.prototype.set_from_quad = function(q, offx, offy, w, h)
	{
		this.pts_cache.length = 8;
		this.pts_count = 4;
		var myptscache = this.pts_cache;
		myptscache[0] = q.tlx - offx;
		myptscache[1] = q.tly - offy;
		myptscache[2] = q.trx - offx;
		myptscache[3] = q.try_ - offy;
		myptscache[4] = q.brx - offx;
		myptscache[5] = q.bry - offy;
		myptscache[6] = q.blx - offx;
		myptscache[7] = q.bly - offy;
		this.cache_width = w;
		this.cache_height = h;
		this.update_bbox();
	};
	CollisionPoly_.prototype.set_from_poly = function (r)
	{
		this.pts_count = r.pts_count;
		cr.shallowAssignArray(this.pts_cache, r.pts_cache);
		this.bboxLeft = r.bboxLeft;
		this.bboxTop - r.bboxTop;
		this.bboxRight = r.bboxRight;
		this.bboxBottom = r.bboxBottom;
	};
	CollisionPoly_.prototype.cache_poly = function(w, h, a)
	{
		if (this.cache_width === w && this.cache_height === h && this.cache_angle === a)
			return;		// cache up-to-date
		this.cache_width = w;
		this.cache_height = h;
		this.cache_angle = a;
		var i, i2, i21, len, x, y;
		var sina = 0;
		var cosa = 1;
		var myptsarray = this.pts_array;
		var myptscache = this.pts_cache;
		if (a !== 0)
		{
			sina = Math.sin(a);
			cosa = Math.cos(a);
		}
		for (i = 0, len = this.pts_count; i < len; i++)
		{
			i2 = i*2;
			i21 = i2+1;
			x = myptsarray[i2] * w;
			y = myptsarray[i21] * h;
			myptscache[i2] = (x * cosa) - (y * sina);
			myptscache[i21] = (y * cosa) + (x * sina);
		}
		this.update_bbox();
	};
	CollisionPoly_.prototype.contains_pt = function (a2x, a2y)
	{
		var myptscache = this.pts_cache;
		if (a2x === myptscache[0] && a2y === myptscache[1])
			return true;
		var i, i2, imod, len = this.pts_count;
		var a1x = this.bboxLeft - 110;
		var a1y = this.bboxTop - 101;
		var a3x = this.bboxRight + 131
		var a3y = this.bboxBottom + 120;
		var b1x, b1y, b2x, b2y;
		var count1 = 0, count2 = 0;
		for (i = 0; i < len; i++)
		{
			i2 = i*2;
			imod = ((i+1)%len)*2;
			b1x = myptscache[i2];
			b1y = myptscache[i2+1];
			b2x = myptscache[imod];
			b2y = myptscache[imod+1];
			if (cr.segments_intersect(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y))
				count1++;
			if (cr.segments_intersect(a3x, a3y, a2x, a2y, b1x, b1y, b2x, b2y))
				count2++;
		}
		return (count1 % 2 === 1) || (count2 % 2 === 1);
	};
	CollisionPoly_.prototype.intersects_poly = function (rhs, offx, offy)
	{
		var rhspts = rhs.pts_cache;
		var mypts = this.pts_cache;
		if (this.contains_pt(rhspts[0] + offx, rhspts[1] + offy))
			return true;
		if (rhs.contains_pt(mypts[0] - offx, mypts[1] - offy))
			return true;
		var i, i2, imod, leni, j, j2, jmod, lenj;
		var a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y;
		for (i = 0, leni = this.pts_count; i < leni; i++)
		{
			i2 = i*2;
			imod = ((i+1)%leni)*2;
			a1x = mypts[i2];
			a1y = mypts[i2+1];
			a2x = mypts[imod];
			a2y = mypts[imod+1];
			for (j = 0, lenj = rhs.pts_count; j < lenj; j++)
			{
				j2 = j*2;
				jmod = ((j+1)%lenj)*2;
				b1x = rhspts[j2] + offx;
				b1y = rhspts[j2+1] + offy;
				b2x = rhspts[jmod] + offx;
				b2y = rhspts[jmod+1] + offy;
				if (cr.segments_intersect(a1x, a1y, a2x, a2y, b1x, b1y, b2x, b2y))
					return true;
			}
		}
		return false;
	};
	CollisionPoly_.prototype.intersects_segment = function (offx, offy, x1, y1, x2, y2)
	{
		var mypts = this.pts_cache;
		if (this.contains_pt(x1 - offx, y1 - offy))
			return true;
		var i, leni, i2, imod;
		var a1x, a1y, a2x, a2y;
		for (i = 0, leni = this.pts_count; i < leni; i++)
		{
			i2 = i*2;
			imod = ((i+1)%leni)*2;
			a1x = mypts[i2] + offx;
			a1y = mypts[i2+1] + offy;
			a2x = mypts[imod] + offx;
			a2y = mypts[imod+1] + offy;
			if (cr.segments_intersect(x1, y1, x2, y2, a1x, a1y, a2x, a2y))
				return true;
		}
		return false;
	};
	CollisionPoly_.prototype.mirror = function (px)
	{
		var i, leni, i2;
		for (i = 0, leni = this.pts_count; i < leni; ++i)
		{
			i2 = i*2;
			this.pts_cache[i2] = px * 2 - this.pts_cache[i2];
		}
	};
	CollisionPoly_.prototype.flip = function (py)
	{
		var i, leni, i21;
		for (i = 0, leni = this.pts_count; i < leni; ++i)
		{
			i21 = i*2+1;
			this.pts_cache[i21] = py * 2 - this.pts_cache[i21];
		}
	};
	CollisionPoly_.prototype.diag = function ()
	{
		var i, leni, i2, i21, temp;
		for (i = 0, leni = this.pts_count; i < leni; ++i)
		{
			i2 = i*2;
			i21 = i2+1;
			temp = this.pts_cache[i2];
			this.pts_cache[i2] = this.pts_cache[i21];
			this.pts_cache[i21] = temp;
		}
	};
	cr.CollisionPoly = CollisionPoly_;
	function SparseGrid_(cellwidth_, cellheight_)
	{
		this.cellwidth = cellwidth_;
		this.cellheight = cellheight_;
		this.cells = {};
	};
	SparseGrid_.prototype.totalCellCount = 0;
	SparseGrid_.prototype.getCell = function (x_, y_, create_if_missing)
	{
		var ret;
		var col = this.cells[x_];
		if (!col)
		{
			if (create_if_missing)
			{
				ret = allocGridCell(this, x_, y_);
				this.cells[x_] = {};
				this.cells[x_][y_] = ret;
				return ret;
			}
			else
				return null;
		}
		ret = col[y_];
		if (ret)
			return ret;
		else if (create_if_missing)
		{
			ret = allocGridCell(this, x_, y_);
			this.cells[x_][y_] = ret;
			return ret;
		}
		else
			return null;
	};
	SparseGrid_.prototype.XToCell = function (x_)
	{
		return cr.floor(x_ / this.cellwidth);
	};
	SparseGrid_.prototype.YToCell = function (y_)
	{
		return cr.floor(y_ / this.cellheight);
	};
	SparseGrid_.prototype.update = function (inst, oldrange, newrange)
	{
		var x, lenx, y, leny, cell;
		if (oldrange)
		{
			for (x = oldrange.left, lenx = oldrange.right; x <= lenx; ++x)
			{
				for (y = oldrange.top, leny = oldrange.bottom; y <= leny; ++y)
				{
					if (newrange && newrange.contains_pt(x, y))
						continue;	// is still in this cell
					cell = this.getCell(x, y, false);	// don't create if missing
					if (!cell)
						continue;	// cell does not exist yet
					cell.remove(inst);
					if (cell.isEmpty())
					{
						freeGridCell(cell);
						this.cells[x][y] = null;
					}
				}
			}
		}
		if (newrange)
		{
			for (x = newrange.left, lenx = newrange.right; x <= lenx; ++x)
			{
				for (y = newrange.top, leny = newrange.bottom; y <= leny; ++y)
				{
					if (oldrange && oldrange.contains_pt(x, y))
						continue;	// is still in this cell
					this.getCell(x, y, true).insert(inst);
				}
			}
		}
	};
	SparseGrid_.prototype.queryRange = function (rc, result)
	{
		var x, lenx, ystart, y, leny, cell;
		x = this.XToCell(rc.left);
		ystart = this.YToCell(rc.top);
		lenx = this.XToCell(rc.right);
		leny = this.YToCell(rc.bottom);
		for ( ; x <= lenx; ++x)
		{
			for (y = ystart; y <= leny; ++y)
			{
				cell = this.getCell(x, y, false);
				if (!cell)
					continue;
				cell.dump(result);
			}
		}
	};
	cr.SparseGrid = SparseGrid_;
	var gridcellcache = [];
	function allocGridCell(grid_, x_, y_)
	{
		var ret;
		SparseGrid_.prototype.totalCellCount++;
		if (gridcellcache.length)
		{
			ret = gridcellcache.pop();
			ret.grid = grid_;
			ret.x = x_;
			ret.y = y_;
			return ret;
		}
		else
			return new cr.GridCell(grid_, x_, y_);
	};
	function freeGridCell(c)
	{
		SparseGrid_.prototype.totalCellCount--;
		c.objects.clear();
		if (gridcellcache.length < 1000)
			gridcellcache.push(c);
	};
	function GridCell_(grid_, x_, y_)
	{
		this.grid = grid_;
		this.x = x_;
		this.y = y_;
		this.objects = new cr.ObjectSet();
	};
	GridCell_.prototype.isEmpty = function ()
	{
		return this.objects.isEmpty();
	};
	GridCell_.prototype.insert = function (inst)
	{
		this.objects.add(inst);
	};
	GridCell_.prototype.remove = function (inst)
	{
		this.objects.remove(inst);
	};
	GridCell_.prototype.dump = function (result)
	{
		cr.appendArray(result, this.objects.valuesRef());
	};
	cr.GridCell = GridCell_;
	var fxNames = [ "lighter",
					"xor",
					"copy",
					"destination-over",
					"source-in",
					"destination-in",
					"source-out",
					"destination-out",
					"source-atop",
					"destination-atop"];
	cr.effectToCompositeOp = function(effect)
	{
		if (effect <= 0 || effect >= 11)
			return "source-over";
		return fxNames[effect - 1];	// not including "none" so offset by 1
	};
	cr.setGLBlend = function(this_, effect, gl)
	{
		if (!gl)
			return;
		this_.srcBlend = gl.ONE;
		this_.destBlend = gl.ONE_MINUS_SRC_ALPHA;
		switch (effect) {
		case 1:		// lighter (additive)
			this_.srcBlend = gl.ONE;
			this_.destBlend = gl.ONE;
			break;
		case 2:		// xor
			break;	// todo
		case 3:		// copy
			this_.srcBlend = gl.ONE;
			this_.destBlend = gl.ZERO;
			break;
		case 4:		// destination-over
			this_.srcBlend = gl.ONE_MINUS_DST_ALPHA;
			this_.destBlend = gl.ONE;
			break;
		case 5:		// source-in
			this_.srcBlend = gl.DST_ALPHA;
			this_.destBlend = gl.ZERO;
			break;
		case 6:		// destination-in
			this_.srcBlend = gl.ZERO;
			this_.destBlend = gl.SRC_ALPHA;
			break;
		case 7:		// source-out
			this_.srcBlend = gl.ONE_MINUS_DST_ALPHA;
			this_.destBlend = gl.ZERO;
			break;
		case 8:		// destination-out
			this_.srcBlend = gl.ZERO;
			this_.destBlend = gl.ONE_MINUS_SRC_ALPHA;
			break;
		case 9:		// source-atop
			this_.srcBlend = gl.DST_ALPHA;
			this_.destBlend = gl.ONE_MINUS_SRC_ALPHA;
			break;
		case 10:	// destination-atop
			this_.srcBlend = gl.ONE_MINUS_DST_ALPHA;
			this_.destBlend = gl.SRC_ALPHA;
			break;
		}
	};
	cr.round6dp = function (x)
	{
		return cr.round(x * 1000000) / 1000000;
	};
	/*
	var localeCompare_options = {
		"usage": "search",
		"sensitivity": "accent"
	};
	var has_localeCompare = !!"a".localeCompare;
	var localeCompare_works1 = (has_localeCompare && "a".localeCompare("A", undefined, localeCompare_options) === 0);
	var localeCompare_works2 = (has_localeCompare && "a".localeCompare("á", undefined, localeCompare_options) !== 0);
	var supports_localeCompare = (has_localeCompare && localeCompare_works1 && localeCompare_works2);
	*/
	cr.equals_nocase = function (a, b)
	{
		if (typeof a !== "string" || typeof b !== "string")
			return false;
		if (a.length !== b.length)
			return false;
		if (a === b)
			return true;
		/*
		if (supports_localeCompare)
		{
			return (a.localeCompare(b, undefined, localeCompare_options) === 0);
		}
		else
		{
		*/
			return a.toLowerCase() === b.toLowerCase();
	};
}());
var MatrixArray=typeof Float32Array!=="undefined"?Float32Array:Array,glMatrixArrayType=MatrixArray,vec3={},mat3={},mat4={},quat4={};vec3.create=function(a){var b=new MatrixArray(3);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2]);return b};vec3.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];return b};vec3.add=function(a,b,c){if(!c||a===c)return a[0]+=b[0],a[1]+=b[1],a[2]+=b[2],a;c[0]=a[0]+b[0];c[1]=a[1]+b[1];c[2]=a[2]+b[2];return c};
vec3.subtract=function(a,b,c){if(!c||a===c)return a[0]-=b[0],a[1]-=b[1],a[2]-=b[2],a;c[0]=a[0]-b[0];c[1]=a[1]-b[1];c[2]=a[2]-b[2];return c};vec3.negate=function(a,b){b||(b=a);b[0]=-a[0];b[1]=-a[1];b[2]=-a[2];return b};vec3.scale=function(a,b,c){if(!c||a===c)return a[0]*=b,a[1]*=b,a[2]*=b,a;c[0]=a[0]*b;c[1]=a[1]*b;c[2]=a[2]*b;return c};
vec3.normalize=function(a,b){b||(b=a);var c=a[0],d=a[1],e=a[2],g=Math.sqrt(c*c+d*d+e*e);if(g){if(g===1)return b[0]=c,b[1]=d,b[2]=e,b}else return b[0]=0,b[1]=0,b[2]=0,b;g=1/g;b[0]=c*g;b[1]=d*g;b[2]=e*g;return b};vec3.cross=function(a,b,c){c||(c=a);var d=a[0],e=a[1],a=a[2],g=b[0],f=b[1],b=b[2];c[0]=e*b-a*f;c[1]=a*g-d*b;c[2]=d*f-e*g;return c};vec3.length=function(a){var b=a[0],c=a[1],a=a[2];return Math.sqrt(b*b+c*c+a*a)};vec3.dot=function(a,b){return a[0]*b[0]+a[1]*b[1]+a[2]*b[2]};
vec3.direction=function(a,b,c){c||(c=a);var d=a[0]-b[0],e=a[1]-b[1],a=a[2]-b[2],b=Math.sqrt(d*d+e*e+a*a);if(!b)return c[0]=0,c[1]=0,c[2]=0,c;b=1/b;c[0]=d*b;c[1]=e*b;c[2]=a*b;return c};vec3.lerp=function(a,b,c,d){d||(d=a);d[0]=a[0]+c*(b[0]-a[0]);d[1]=a[1]+c*(b[1]-a[1]);d[2]=a[2]+c*(b[2]-a[2]);return d};vec3.str=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+"]"};
mat3.create=function(a){var b=new MatrixArray(9);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3],b[4]=a[4],b[5]=a[5],b[6]=a[6],b[7]=a[7],b[8]=a[8]);return b};mat3.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];b[4]=a[4];b[5]=a[5];b[6]=a[6];b[7]=a[7];b[8]=a[8];return b};mat3.identity=function(a){a[0]=1;a[1]=0;a[2]=0;a[3]=0;a[4]=1;a[5]=0;a[6]=0;a[7]=0;a[8]=1;return a};
mat3.transpose=function(a,b){if(!b||a===b){var c=a[1],d=a[2],e=a[5];a[1]=a[3];a[2]=a[6];a[3]=c;a[5]=a[7];a[6]=d;a[7]=e;return a}b[0]=a[0];b[1]=a[3];b[2]=a[6];b[3]=a[1];b[4]=a[4];b[5]=a[7];b[6]=a[2];b[7]=a[5];b[8]=a[8];return b};mat3.toMat4=function(a,b){b||(b=mat4.create());b[15]=1;b[14]=0;b[13]=0;b[12]=0;b[11]=0;b[10]=a[8];b[9]=a[7];b[8]=a[6];b[7]=0;b[6]=a[5];b[5]=a[4];b[4]=a[3];b[3]=0;b[2]=a[2];b[1]=a[1];b[0]=a[0];return b};
mat3.str=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+", "+a[3]+", "+a[4]+", "+a[5]+", "+a[6]+", "+a[7]+", "+a[8]+"]"};mat4.create=function(a){var b=new MatrixArray(16);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3],b[4]=a[4],b[5]=a[5],b[6]=a[6],b[7]=a[7],b[8]=a[8],b[9]=a[9],b[10]=a[10],b[11]=a[11],b[12]=a[12],b[13]=a[13],b[14]=a[14],b[15]=a[15]);return b};
mat4.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];b[4]=a[4];b[5]=a[5];b[6]=a[6];b[7]=a[7];b[8]=a[8];b[9]=a[9];b[10]=a[10];b[11]=a[11];b[12]=a[12];b[13]=a[13];b[14]=a[14];b[15]=a[15];return b};mat4.identity=function(a){a[0]=1;a[1]=0;a[2]=0;a[3]=0;a[4]=0;a[5]=1;a[6]=0;a[7]=0;a[8]=0;a[9]=0;a[10]=1;a[11]=0;a[12]=0;a[13]=0;a[14]=0;a[15]=1;return a};
mat4.transpose=function(a,b){if(!b||a===b){var c=a[1],d=a[2],e=a[3],g=a[6],f=a[7],h=a[11];a[1]=a[4];a[2]=a[8];a[3]=a[12];a[4]=c;a[6]=a[9];a[7]=a[13];a[8]=d;a[9]=g;a[11]=a[14];a[12]=e;a[13]=f;a[14]=h;return a}b[0]=a[0];b[1]=a[4];b[2]=a[8];b[3]=a[12];b[4]=a[1];b[5]=a[5];b[6]=a[9];b[7]=a[13];b[8]=a[2];b[9]=a[6];b[10]=a[10];b[11]=a[14];b[12]=a[3];b[13]=a[7];b[14]=a[11];b[15]=a[15];return b};
mat4.determinant=function(a){var b=a[0],c=a[1],d=a[2],e=a[3],g=a[4],f=a[5],h=a[6],i=a[7],j=a[8],k=a[9],l=a[10],n=a[11],o=a[12],m=a[13],p=a[14],a=a[15];return o*k*h*e-j*m*h*e-o*f*l*e+g*m*l*e+j*f*p*e-g*k*p*e-o*k*d*i+j*m*d*i+o*c*l*i-b*m*l*i-j*c*p*i+b*k*p*i+o*f*d*n-g*m*d*n-o*c*h*n+b*m*h*n+g*c*p*n-b*f*p*n-j*f*d*a+g*k*d*a+j*c*h*a-b*k*h*a-g*c*l*a+b*f*l*a};
mat4.inverse=function(a,b){b||(b=a);var c=a[0],d=a[1],e=a[2],g=a[3],f=a[4],h=a[5],i=a[6],j=a[7],k=a[8],l=a[9],n=a[10],o=a[11],m=a[12],p=a[13],r=a[14],s=a[15],A=c*h-d*f,B=c*i-e*f,t=c*j-g*f,u=d*i-e*h,v=d*j-g*h,w=e*j-g*i,x=k*p-l*m,y=k*r-n*m,z=k*s-o*m,C=l*r-n*p,D=l*s-o*p,E=n*s-o*r,q=1/(A*E-B*D+t*C+u*z-v*y+w*x);b[0]=(h*E-i*D+j*C)*q;b[1]=(-d*E+e*D-g*C)*q;b[2]=(p*w-r*v+s*u)*q;b[3]=(-l*w+n*v-o*u)*q;b[4]=(-f*E+i*z-j*y)*q;b[5]=(c*E-e*z+g*y)*q;b[6]=(-m*w+r*t-s*B)*q;b[7]=(k*w-n*t+o*B)*q;b[8]=(f*D-h*z+j*x)*q;
b[9]=(-c*D+d*z-g*x)*q;b[10]=(m*v-p*t+s*A)*q;b[11]=(-k*v+l*t-o*A)*q;b[12]=(-f*C+h*y-i*x)*q;b[13]=(c*C-d*y+e*x)*q;b[14]=(-m*u+p*B-r*A)*q;b[15]=(k*u-l*B+n*A)*q;return b};mat4.toRotationMat=function(a,b){b||(b=mat4.create());b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];b[4]=a[4];b[5]=a[5];b[6]=a[6];b[7]=a[7];b[8]=a[8];b[9]=a[9];b[10]=a[10];b[11]=a[11];b[12]=0;b[13]=0;b[14]=0;b[15]=1;return b};
mat4.toMat3=function(a,b){b||(b=mat3.create());b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[4];b[4]=a[5];b[5]=a[6];b[6]=a[8];b[7]=a[9];b[8]=a[10];return b};mat4.toInverseMat3=function(a,b){var c=a[0],d=a[1],e=a[2],g=a[4],f=a[5],h=a[6],i=a[8],j=a[9],k=a[10],l=k*f-h*j,n=-k*g+h*i,o=j*g-f*i,m=c*l+d*n+e*o;if(!m)return null;m=1/m;b||(b=mat3.create());b[0]=l*m;b[1]=(-k*d+e*j)*m;b[2]=(h*d-e*f)*m;b[3]=n*m;b[4]=(k*c-e*i)*m;b[5]=(-h*c+e*g)*m;b[6]=o*m;b[7]=(-j*c+d*i)*m;b[8]=(f*c-d*g)*m;return b};
mat4.multiply=function(a,b,c){c||(c=a);var d=a[0],e=a[1],g=a[2],f=a[3],h=a[4],i=a[5],j=a[6],k=a[7],l=a[8],n=a[9],o=a[10],m=a[11],p=a[12],r=a[13],s=a[14],a=a[15],A=b[0],B=b[1],t=b[2],u=b[3],v=b[4],w=b[5],x=b[6],y=b[7],z=b[8],C=b[9],D=b[10],E=b[11],q=b[12],F=b[13],G=b[14],b=b[15];c[0]=A*d+B*h+t*l+u*p;c[1]=A*e+B*i+t*n+u*r;c[2]=A*g+B*j+t*o+u*s;c[3]=A*f+B*k+t*m+u*a;c[4]=v*d+w*h+x*l+y*p;c[5]=v*e+w*i+x*n+y*r;c[6]=v*g+w*j+x*o+y*s;c[7]=v*f+w*k+x*m+y*a;c[8]=z*d+C*h+D*l+E*p;c[9]=z*e+C*i+D*n+E*r;c[10]=z*g+C*
j+D*o+E*s;c[11]=z*f+C*k+D*m+E*a;c[12]=q*d+F*h+G*l+b*p;c[13]=q*e+F*i+G*n+b*r;c[14]=q*g+F*j+G*o+b*s;c[15]=q*f+F*k+G*m+b*a;return c};mat4.multiplyVec3=function(a,b,c){c||(c=b);var d=b[0],e=b[1],b=b[2];c[0]=a[0]*d+a[4]*e+a[8]*b+a[12];c[1]=a[1]*d+a[5]*e+a[9]*b+a[13];c[2]=a[2]*d+a[6]*e+a[10]*b+a[14];return c};
mat4.multiplyVec4=function(a,b,c){c||(c=b);var d=b[0],e=b[1],g=b[2],b=b[3];c[0]=a[0]*d+a[4]*e+a[8]*g+a[12]*b;c[1]=a[1]*d+a[5]*e+a[9]*g+a[13]*b;c[2]=a[2]*d+a[6]*e+a[10]*g+a[14]*b;c[3]=a[3]*d+a[7]*e+a[11]*g+a[15]*b;return c};
mat4.translate=function(a,b,c){var d=b[0],e=b[1],b=b[2],g,f,h,i,j,k,l,n,o,m,p,r;if(!c||a===c)return a[12]=a[0]*d+a[4]*e+a[8]*b+a[12],a[13]=a[1]*d+a[5]*e+a[9]*b+a[13],a[14]=a[2]*d+a[6]*e+a[10]*b+a[14],a[15]=a[3]*d+a[7]*e+a[11]*b+a[15],a;g=a[0];f=a[1];h=a[2];i=a[3];j=a[4];k=a[5];l=a[6];n=a[7];o=a[8];m=a[9];p=a[10];r=a[11];c[0]=g;c[1]=f;c[2]=h;c[3]=i;c[4]=j;c[5]=k;c[6]=l;c[7]=n;c[8]=o;c[9]=m;c[10]=p;c[11]=r;c[12]=g*d+j*e+o*b+a[12];c[13]=f*d+k*e+m*b+a[13];c[14]=h*d+l*e+p*b+a[14];c[15]=i*d+n*e+r*b+a[15];
return c};mat4.scale=function(a,b,c){var d=b[0],e=b[1],b=b[2];if(!c||a===c)return a[0]*=d,a[1]*=d,a[2]*=d,a[3]*=d,a[4]*=e,a[5]*=e,a[6]*=e,a[7]*=e,a[8]*=b,a[9]*=b,a[10]*=b,a[11]*=b,a;c[0]=a[0]*d;c[1]=a[1]*d;c[2]=a[2]*d;c[3]=a[3]*d;c[4]=a[4]*e;c[5]=a[5]*e;c[6]=a[6]*e;c[7]=a[7]*e;c[8]=a[8]*b;c[9]=a[9]*b;c[10]=a[10]*b;c[11]=a[11]*b;c[12]=a[12];c[13]=a[13];c[14]=a[14];c[15]=a[15];return c};
mat4.rotate=function(a,b,c,d){var e=c[0],g=c[1],c=c[2],f=Math.sqrt(e*e+g*g+c*c),h,i,j,k,l,n,o,m,p,r,s,A,B,t,u,v,w,x,y,z;if(!f)return null;f!==1&&(f=1/f,e*=f,g*=f,c*=f);h=Math.sin(b);i=Math.cos(b);j=1-i;b=a[0];f=a[1];k=a[2];l=a[3];n=a[4];o=a[5];m=a[6];p=a[7];r=a[8];s=a[9];A=a[10];B=a[11];t=e*e*j+i;u=g*e*j+c*h;v=c*e*j-g*h;w=e*g*j-c*h;x=g*g*j+i;y=c*g*j+e*h;z=e*c*j+g*h;e=g*c*j-e*h;g=c*c*j+i;d?a!==d&&(d[12]=a[12],d[13]=a[13],d[14]=a[14],d[15]=a[15]):d=a;d[0]=b*t+n*u+r*v;d[1]=f*t+o*u+s*v;d[2]=k*t+m*u+A*
v;d[3]=l*t+p*u+B*v;d[4]=b*w+n*x+r*y;d[5]=f*w+o*x+s*y;d[6]=k*w+m*x+A*y;d[7]=l*w+p*x+B*y;d[8]=b*z+n*e+r*g;d[9]=f*z+o*e+s*g;d[10]=k*z+m*e+A*g;d[11]=l*z+p*e+B*g;return d};mat4.rotateX=function(a,b,c){var d=Math.sin(b),b=Math.cos(b),e=a[4],g=a[5],f=a[6],h=a[7],i=a[8],j=a[9],k=a[10],l=a[11];c?a!==c&&(c[0]=a[0],c[1]=a[1],c[2]=a[2],c[3]=a[3],c[12]=a[12],c[13]=a[13],c[14]=a[14],c[15]=a[15]):c=a;c[4]=e*b+i*d;c[5]=g*b+j*d;c[6]=f*b+k*d;c[7]=h*b+l*d;c[8]=e*-d+i*b;c[9]=g*-d+j*b;c[10]=f*-d+k*b;c[11]=h*-d+l*b;return c};
mat4.rotateY=function(a,b,c){var d=Math.sin(b),b=Math.cos(b),e=a[0],g=a[1],f=a[2],h=a[3],i=a[8],j=a[9],k=a[10],l=a[11];c?a!==c&&(c[4]=a[4],c[5]=a[5],c[6]=a[6],c[7]=a[7],c[12]=a[12],c[13]=a[13],c[14]=a[14],c[15]=a[15]):c=a;c[0]=e*b+i*-d;c[1]=g*b+j*-d;c[2]=f*b+k*-d;c[3]=h*b+l*-d;c[8]=e*d+i*b;c[9]=g*d+j*b;c[10]=f*d+k*b;c[11]=h*d+l*b;return c};
mat4.rotateZ=function(a,b,c){var d=Math.sin(b),b=Math.cos(b),e=a[0],g=a[1],f=a[2],h=a[3],i=a[4],j=a[5],k=a[6],l=a[7];c?a!==c&&(c[8]=a[8],c[9]=a[9],c[10]=a[10],c[11]=a[11],c[12]=a[12],c[13]=a[13],c[14]=a[14],c[15]=a[15]):c=a;c[0]=e*b+i*d;c[1]=g*b+j*d;c[2]=f*b+k*d;c[3]=h*b+l*d;c[4]=e*-d+i*b;c[5]=g*-d+j*b;c[6]=f*-d+k*b;c[7]=h*-d+l*b;return c};
mat4.frustum=function(a,b,c,d,e,g,f){f||(f=mat4.create());var h=b-a,i=d-c,j=g-e;f[0]=e*2/h;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=e*2/i;f[6]=0;f[7]=0;f[8]=(b+a)/h;f[9]=(d+c)/i;f[10]=-(g+e)/j;f[11]=-1;f[12]=0;f[13]=0;f[14]=-(g*e*2)/j;f[15]=0;return f};mat4.perspective=function(a,b,c,d,e){a=c*Math.tan(a*Math.PI/360);b*=a;return mat4.frustum(-b,b,-a,a,c,d,e)};
mat4.ortho=function(a,b,c,d,e,g,f){f||(f=mat4.create());var h=b-a,i=d-c,j=g-e;f[0]=2/h;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=2/i;f[6]=0;f[7]=0;f[8]=0;f[9]=0;f[10]=-2/j;f[11]=0;f[12]=-(a+b)/h;f[13]=-(d+c)/i;f[14]=-(g+e)/j;f[15]=1;return f};
mat4.lookAt=function(a,b,c,d){d||(d=mat4.create());var e,g,f,h,i,j,k,l,n=a[0],o=a[1],a=a[2];g=c[0];f=c[1];e=c[2];c=b[1];j=b[2];if(n===b[0]&&o===c&&a===j)return mat4.identity(d);c=n-b[0];j=o-b[1];k=a-b[2];l=1/Math.sqrt(c*c+j*j+k*k);c*=l;j*=l;k*=l;b=f*k-e*j;e=e*c-g*k;g=g*j-f*c;(l=Math.sqrt(b*b+e*e+g*g))?(l=1/l,b*=l,e*=l,g*=l):g=e=b=0;f=j*g-k*e;h=k*b-c*g;i=c*e-j*b;(l=Math.sqrt(f*f+h*h+i*i))?(l=1/l,f*=l,h*=l,i*=l):i=h=f=0;d[0]=b;d[1]=f;d[2]=c;d[3]=0;d[4]=e;d[5]=h;d[6]=j;d[7]=0;d[8]=g;d[9]=i;d[10]=k;d[11]=
0;d[12]=-(b*n+e*o+g*a);d[13]=-(f*n+h*o+i*a);d[14]=-(c*n+j*o+k*a);d[15]=1;return d};mat4.fromRotationTranslation=function(a,b,c){c||(c=mat4.create());var d=a[0],e=a[1],g=a[2],f=a[3],h=d+d,i=e+e,j=g+g,a=d*h,k=d*i;d*=j;var l=e*i;e*=j;g*=j;h*=f;i*=f;f*=j;c[0]=1-(l+g);c[1]=k+f;c[2]=d-i;c[3]=0;c[4]=k-f;c[5]=1-(a+g);c[6]=e+h;c[7]=0;c[8]=d+i;c[9]=e-h;c[10]=1-(a+l);c[11]=0;c[12]=b[0];c[13]=b[1];c[14]=b[2];c[15]=1;return c};
mat4.str=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+", "+a[3]+", "+a[4]+", "+a[5]+", "+a[6]+", "+a[7]+", "+a[8]+", "+a[9]+", "+a[10]+", "+a[11]+", "+a[12]+", "+a[13]+", "+a[14]+", "+a[15]+"]"};quat4.create=function(a){var b=new MatrixArray(4);a&&(b[0]=a[0],b[1]=a[1],b[2]=a[2],b[3]=a[3]);return b};quat4.set=function(a,b){b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];return b};
quat4.calculateW=function(a,b){var c=a[0],d=a[1],e=a[2];if(!b||a===b)return a[3]=-Math.sqrt(Math.abs(1-c*c-d*d-e*e)),a;b[0]=c;b[1]=d;b[2]=e;b[3]=-Math.sqrt(Math.abs(1-c*c-d*d-e*e));return b};quat4.inverse=function(a,b){if(!b||a===b)return a[0]*=-1,a[1]*=-1,a[2]*=-1,a;b[0]=-a[0];b[1]=-a[1];b[2]=-a[2];b[3]=a[3];return b};quat4.length=function(a){var b=a[0],c=a[1],d=a[2],a=a[3];return Math.sqrt(b*b+c*c+d*d+a*a)};
quat4.normalize=function(a,b){b||(b=a);var c=a[0],d=a[1],e=a[2],g=a[3],f=Math.sqrt(c*c+d*d+e*e+g*g);if(f===0)return b[0]=0,b[1]=0,b[2]=0,b[3]=0,b;f=1/f;b[0]=c*f;b[1]=d*f;b[2]=e*f;b[3]=g*f;return b};quat4.multiply=function(a,b,c){c||(c=a);var d=a[0],e=a[1],g=a[2],a=a[3],f=b[0],h=b[1],i=b[2],b=b[3];c[0]=d*b+a*f+e*i-g*h;c[1]=e*b+a*h+g*f-d*i;c[2]=g*b+a*i+d*h-e*f;c[3]=a*b-d*f-e*h-g*i;return c};
quat4.multiplyVec3=function(a,b,c){c||(c=b);var d=b[0],e=b[1],g=b[2],b=a[0],f=a[1],h=a[2],a=a[3],i=a*d+f*g-h*e,j=a*e+h*d-b*g,k=a*g+b*e-f*d,d=-b*d-f*e-h*g;c[0]=i*a+d*-b+j*-h-k*-f;c[1]=j*a+d*-f+k*-b-i*-h;c[2]=k*a+d*-h+i*-f-j*-b;return c};quat4.toMat3=function(a,b){b||(b=mat3.create());var c=a[0],d=a[1],e=a[2],g=a[3],f=c+c,h=d+d,i=e+e,j=c*f,k=c*h;c*=i;var l=d*h;d*=i;e*=i;f*=g;h*=g;g*=i;b[0]=1-(l+e);b[1]=k+g;b[2]=c-h;b[3]=k-g;b[4]=1-(j+e);b[5]=d+f;b[6]=c+h;b[7]=d-f;b[8]=1-(j+l);return b};
quat4.toMat4=function(a,b){b||(b=mat4.create());var c=a[0],d=a[1],e=a[2],g=a[3],f=c+c,h=d+d,i=e+e,j=c*f,k=c*h;c*=i;var l=d*h;d*=i;e*=i;f*=g;h*=g;g*=i;b[0]=1-(l+e);b[1]=k+g;b[2]=c-h;b[3]=0;b[4]=k-g;b[5]=1-(j+e);b[6]=d+f;b[7]=0;b[8]=c+h;b[9]=d-f;b[10]=1-(j+l);b[11]=0;b[12]=0;b[13]=0;b[14]=0;b[15]=1;return b};
quat4.slerp=function(a,b,c,d){d||(d=a);var e=a[0]*b[0]+a[1]*b[1]+a[2]*b[2]+a[3]*b[3],g,f;if(Math.abs(e)>=1)return d!==a&&(d[0]=a[0],d[1]=a[1],d[2]=a[2],d[3]=a[3]),d;g=Math.acos(e);f=Math.sqrt(1-e*e);if(Math.abs(f)<0.001)return d[0]=a[0]*0.5+b[0]*0.5,d[1]=a[1]*0.5+b[1]*0.5,d[2]=a[2]*0.5+b[2]*0.5,d[3]=a[3]*0.5+b[3]*0.5,d;e=Math.sin((1-c)*g)/f;c=Math.sin(c*g)/f;d[0]=a[0]*e+b[0]*c;d[1]=a[1]*e+b[1]*c;d[2]=a[2]*e+b[2]*c;d[3]=a[3]*e+b[3]*c;return d};
quat4.str=function(a){return"["+a[0]+", "+a[1]+", "+a[2]+", "+a[3]+"]"};
(function()
{
	var MAX_VERTICES = 8000;						// equates to 2500 objects being drawn
	var MAX_INDICES = (MAX_VERTICES / 2) * 3;		// 6 indices for every 4 vertices
	var MAX_POINTS = 8000;
	var MULTI_BUFFERS = 4;							// cycle 4 buffers to try and avoid blocking
	var BATCH_NULL = 0;
	var BATCH_QUAD = 1;
	var BATCH_SETTEXTURE = 2;
	var BATCH_SETOPACITY = 3;
	var BATCH_SETBLEND = 4;
	var BATCH_UPDATEMODELVIEW = 5;
	var BATCH_RENDERTOTEXTURE = 6;
	var BATCH_CLEAR = 7;
	var BATCH_POINTS = 8;
	var BATCH_SETPROGRAM = 9;
	var BATCH_SETPROGRAMPARAMETERS = 10;
	var BATCH_SETTEXTURE1 = 11;
	function GLWrap_(gl, isMobile)
	{
		this.isIE = /msie/i.test(navigator.userAgent) || /trident/i.test(navigator.userAgent);
		this.width = 0;		// not yet known, wait for call to setSize()
		this.height = 0;
		this.cam = vec3.create([0, 0, 100]);			// camera position
		this.look = vec3.create([0, 0, 0]);				// lookat position
		this.up = vec3.create([0, 1, 0]);				// up vector
		this.worldScale = vec3.create([1, 1, 1]);		// world scaling factor
		this.matP = mat4.create();						// perspective matrix
		this.matMV = mat4.create();						// model view matrix
		this.lastMV = mat4.create();
		this.currentMV = mat4.create();
		this.gl = gl;
		this.initState();
	};
	GLWrap_.prototype.initState = function ()
	{
		var gl = this.gl;
		var i, len;
		this.lastOpacity = 1;
		this.lastTexture0 = null;			// last bound to TEXTURE0
		this.lastTexture1 = null;			// last bound to TEXTURE1
		this.currentOpacity = 1;
		gl.clearColor(0, 0, 0, 0);
		gl.clear(gl.COLOR_BUFFER_BIT);
		gl.enable(gl.BLEND);
        gl.blendFunc(gl.ONE, gl.ONE_MINUS_SRC_ALPHA);
		gl.disable(gl.CULL_FACE);
		gl.disable(gl.DEPTH_TEST);
		this.maxTextureSize = gl.getParameter(gl.MAX_TEXTURE_SIZE);
		this.lastSrcBlend = gl.ONE;
		this.lastDestBlend = gl.ONE_MINUS_SRC_ALPHA;
		this.pointBuffer = gl.createBuffer();
		gl.bindBuffer(gl.ARRAY_BUFFER, this.pointBuffer);
		this.vertexBuffers = new Array(MULTI_BUFFERS);
		this.texcoordBuffers = new Array(MULTI_BUFFERS);
		for (i = 0; i < MULTI_BUFFERS; i++)
		{
			this.vertexBuffers[i] = gl.createBuffer();
			gl.bindBuffer(gl.ARRAY_BUFFER, this.vertexBuffers[i]);
			this.texcoordBuffers[i] = gl.createBuffer();
			gl.bindBuffer(gl.ARRAY_BUFFER, this.texcoordBuffers[i]);
		}
		this.curBuffer = 0;
		this.indexBuffer = gl.createBuffer();
		gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, this.indexBuffer);
		this.vertexData = new Float32Array(MAX_VERTICES * 2);
		this.texcoordData = new Float32Array(MAX_VERTICES * 2);
		this.pointData = new Float32Array(MAX_POINTS * 4);
		var indexData = new Uint16Array(MAX_INDICES);
		i = 0, len = MAX_INDICES;
		var fv = 0;
		while (i < len)
		{
			indexData[i++] = fv;		// top left
			indexData[i++] = fv + 1;	// top right
			indexData[i++] = fv + 2;	// bottom right (first tri)
			indexData[i++] = fv;		// top left
			indexData[i++] = fv + 2;	// bottom right
			indexData[i++] = fv + 3;	// bottom left
			fv += 4;
		}
		gl.bufferData(gl.ELEMENT_ARRAY_BUFFER, indexData, gl.STATIC_DRAW);
		this.vertexPtr = 0;
		this.pointPtr = 0;
		var fsSource, vsSource;
		this.shaderPrograms = [];
		fsSource = [
			"varying mediump vec2 vTex;",
			"uniform lowp float opacity;",
			"uniform lowp sampler2D samplerFront;",
			"void main(void) {",
			"	gl_FragColor = texture2D(samplerFront, vTex);",
			"	gl_FragColor *= opacity;",
			"}"
		].join("\n");
		vsSource = [
			"attribute highp vec2 aPos;",
			"attribute mediump vec2 aTex;",
			"varying mediump vec2 vTex;",
			"uniform highp mat4 matP;",
			"uniform highp mat4 matMV;",
			"void main(void) {",
			"	gl_Position = matP * matMV * vec4(aPos.x, aPos.y, 0.0, 1.0);",
			"	vTex = aTex;",
			"}"
		].join("\n");
		var shaderProg = this.createShaderProgram({src: fsSource}, vsSource, "<default>");
;
		this.shaderPrograms.push(shaderProg);		// Default shader is always shader 0
		fsSource = [
			"uniform mediump sampler2D samplerFront;",
			"varying lowp float opacity;",
			"void main(void) {",
			"	gl_FragColor = texture2D(samplerFront, gl_PointCoord);",
			"	gl_FragColor *= opacity;",
			"}"
		].join("\n");
		var pointVsSource = [
			"attribute vec4 aPos;",
			"varying float opacity;",
			"uniform mat4 matP;",
			"uniform mat4 matMV;",
			"void main(void) {",
			"	gl_Position = matP * matMV * vec4(aPos.x, aPos.y, 0.0, 1.0);",
			"	gl_PointSize = aPos.z;",
			"	opacity = aPos.w;",
			"}"
		].join("\n");
		shaderProg = this.createShaderProgram({src: fsSource}, pointVsSource, "<point>");
;
		this.shaderPrograms.push(shaderProg);		// Point shader is always shader 1
		for (var shader_name in cr.shaders)
		{
			if (cr.shaders.hasOwnProperty(shader_name))
				this.shaderPrograms.push(this.createShaderProgram(cr.shaders[shader_name], vsSource, shader_name));
		}
		gl.activeTexture(gl.TEXTURE0);
		gl.bindTexture(gl.TEXTURE_2D, null);
		this.batch = [];
		this.batchPtr = 0;
		this.hasQuadBatchTop = false;
		this.hasPointBatchTop = false;
		this.lastProgram = -1;				// start -1 so first switchProgram can do work
		this.currentProgram = -1;			// current program during batch execution
		this.currentShader = null;
		this.fbo = gl.createFramebuffer();
		this.renderToTex = null;
		this.tmpVec3 = vec3.create([0, 0, 0]);
;
;
		var pointsizes = gl.getParameter(gl.ALIASED_POINT_SIZE_RANGE);
		this.minPointSize = pointsizes[0];
		this.maxPointSize = pointsizes[1];
;
		this.switchProgram(0);
		cr.seal(this);
	};
	function GLShaderProgram(gl, shaderProgram, name)
	{
		this.gl = gl;
		this.shaderProgram = shaderProgram;
		this.name = name;
		this.locAPos = gl.getAttribLocation(shaderProgram, "aPos");
		this.locATex = gl.getAttribLocation(shaderProgram, "aTex");
		this.locMatP = gl.getUniformLocation(shaderProgram, "matP");
		this.locMatMV = gl.getUniformLocation(shaderProgram, "matMV");
		this.locOpacity = gl.getUniformLocation(shaderProgram, "opacity");
		this.locSamplerFront = gl.getUniformLocation(shaderProgram, "samplerFront");
		this.locSamplerBack = gl.getUniformLocation(shaderProgram, "samplerBack");
		this.locDestStart = gl.getUniformLocation(shaderProgram, "destStart");
		this.locDestEnd = gl.getUniformLocation(shaderProgram, "destEnd");
		this.locSeconds = gl.getUniformLocation(shaderProgram, "seconds");
		this.locPixelWidth = gl.getUniformLocation(shaderProgram, "pixelWidth");
		this.locPixelHeight = gl.getUniformLocation(shaderProgram, "pixelHeight");
		this.locLayerScale = gl.getUniformLocation(shaderProgram, "layerScale");
		this.locLayerAngle = gl.getUniformLocation(shaderProgram, "layerAngle");
		this.locViewOrigin = gl.getUniformLocation(shaderProgram, "viewOrigin");
		this.hasAnyOptionalUniforms = !!(this.locPixelWidth || this.locPixelHeight || this.locSeconds || this.locSamplerBack || this.locDestStart || this.locDestEnd || this.locLayerScale || this.locLayerAngle || this.locViewOrigin);
		if (this.locOpacity)
			gl.uniform1f(this.locOpacity, 1);
		if (this.locSamplerFront)
			gl.uniform1i(this.locSamplerFront, 0);
		if (this.locSamplerBack)
			gl.uniform1i(this.locSamplerBack, 1);
		if (this.locDestStart)
			gl.uniform2f(this.locDestStart, 0.0, 0.0);
		if (this.locDestEnd)
			gl.uniform2f(this.locDestEnd, 1.0, 1.0);
		if (this.locLayerScale)
			gl.uniform1f(this.locLayerScale, 1.0);
		if (this.locLayerAngle)
			gl.uniform1f(this.locLayerAngle, 0.0);
		if (this.locViewOrigin)
			gl.uniform2f(this.locViewOrigin, 0.0, 0.0);
		this.hasCurrentMatMV = false;		// matMV needs updating
	};
	GLWrap_.prototype.createShaderProgram = function(shaderEntry, vsSource, name)
	{
		var gl = this.gl;
		var fragmentShader = gl.createShader(gl.FRAGMENT_SHADER);
		gl.shaderSource(fragmentShader, shaderEntry.src);
		gl.compileShader(fragmentShader);
		if (!gl.getShaderParameter(fragmentShader, gl.COMPILE_STATUS))
		{
;
			gl.deleteShader(fragmentShader);
			return null;
		}
		var vertexShader = gl.createShader(gl.VERTEX_SHADER);
		gl.shaderSource(vertexShader, vsSource);
		gl.compileShader(vertexShader);
		if (!gl.getShaderParameter(vertexShader, gl.COMPILE_STATUS))
		{
;
			gl.deleteShader(fragmentShader);
			gl.deleteShader(vertexShader);
			return null;
		}
		var shaderProgram = gl.createProgram();
		gl.attachShader(shaderProgram, fragmentShader);
		gl.attachShader(shaderProgram, vertexShader);
		gl.linkProgram(shaderProgram);
		if (!gl.getProgramParameter(shaderProgram, gl.LINK_STATUS))
		{
;
			gl.deleteShader(fragmentShader);
			gl.deleteShader(vertexShader);
			gl.deleteProgram(shaderProgram);
			return null;
		}
		gl.useProgram(shaderProgram);
;
		gl.deleteShader(fragmentShader);
		gl.deleteShader(vertexShader);
		var ret = new GLShaderProgram(gl, shaderProgram, name);
		ret.extendBoxHorizontal = shaderEntry.extendBoxHorizontal || 0;
		ret.extendBoxVertical = shaderEntry.extendBoxVertical || 0;
		ret.crossSampling = !!shaderEntry.crossSampling;
		ret.animated = !!shaderEntry.animated;
		ret.parameters = shaderEntry.parameters || [];
		var i, len;
		for (i = 0, len = ret.parameters.length; i < len; i++)
		{
			ret.parameters[i][1] = gl.getUniformLocation(shaderProgram, ret.parameters[i][0]);
			gl.uniform1f(ret.parameters[i][1], 0);
		}
		cr.seal(ret);
		return ret;
	};
	GLWrap_.prototype.getShaderIndex = function(name_)
	{
		var i, len;
		for (i = 0, len = this.shaderPrograms.length; i < len; i++)
		{
			if (this.shaderPrograms[i].name === name_)
				return i;
		}
		return -1;
	};
	GLWrap_.prototype.project = function (x, y, out)
	{
		var mv = this.matMV;
		var proj = this.matP;
		var fTempo = [0, 0, 0, 0, 0, 0, 0, 0];
		fTempo[0] = mv[0]*x+mv[4]*y+mv[12];
		fTempo[1] = mv[1]*x+mv[5]*y+mv[13];
		fTempo[2] = mv[2]*x+mv[6]*y+mv[14];
		fTempo[3] = mv[3]*x+mv[7]*y+mv[15];
		fTempo[4] = proj[0]*fTempo[0]+proj[4]*fTempo[1]+proj[8]*fTempo[2]+proj[12]*fTempo[3];
		fTempo[5] = proj[1]*fTempo[0]+proj[5]*fTempo[1]+proj[9]*fTempo[2]+proj[13]*fTempo[3];
		fTempo[6] = proj[2]*fTempo[0]+proj[6]*fTempo[1]+proj[10]*fTempo[2]+proj[14]*fTempo[3];
		fTempo[7] = -fTempo[2];
		if(fTempo[7]===0.0)	//The w value
			return;
		fTempo[7]=1.0/fTempo[7];
		fTempo[4]*=fTempo[7];
		fTempo[5]*=fTempo[7];
		fTempo[6]*=fTempo[7];
		out[0]=(fTempo[4]*0.5+0.5)*this.width;
		out[1]=(fTempo[5]*0.5+0.5)*this.height;
	};
	GLWrap_.prototype.setSize = function(w, h, force)
	{
		if (this.width === w && this.height === h && !force)
			return;
		this.endBatch();
		this.width = w;
		this.height = h;
		this.gl.viewport(0, 0, w, h);
		mat4.perspective(45, w / h, 1, 1000, this.matP);
		mat4.lookAt(this.cam, this.look, this.up, this.matMV);
		var tl = [0, 0];
		var br = [0, 0];
		this.project(0, 0, tl);
		this.project(1, 1, br);
		this.worldScale[0] = 1 / (br[0] - tl[0]);
		this.worldScale[1] = -1 / (br[1] - tl[1]);
		var i, len, s;
		for (i = 0, len = this.shaderPrograms.length; i < len; i++)
		{
			s = this.shaderPrograms[i];
			s.hasCurrentMatMV = false;
			if (s.locMatP)
			{
				this.gl.useProgram(s.shaderProgram);
				this.gl.uniformMatrix4fv(s.locMatP, false, this.matP);
			}
		}
		this.gl.useProgram(this.shaderPrograms[this.lastProgram].shaderProgram);
		this.gl.bindTexture(this.gl.TEXTURE_2D, null);
		this.gl.activeTexture(this.gl.TEXTURE1);
		this.gl.bindTexture(this.gl.TEXTURE_2D, null);
		this.gl.activeTexture(this.gl.TEXTURE0);
		this.lastTexture0 = null;
		this.lastTexture1 = null;
	};
	GLWrap_.prototype.resetModelView = function ()
	{
		mat4.lookAt(this.cam, this.look, this.up, this.matMV);
		mat4.scale(this.matMV, this.worldScale);
	};
	GLWrap_.prototype.translate = function (x, y)
	{
		if (x === 0 && y === 0)
			return;
		this.tmpVec3[0] = x;// * this.worldScale[0];
		this.tmpVec3[1] = y;// * this.worldScale[1];
		this.tmpVec3[2] = 0;
		mat4.translate(this.matMV, this.tmpVec3);
	};
	GLWrap_.prototype.scale = function (x, y)
	{
		if (x === 1 && y === 1)
			return;
		this.tmpVec3[0] = x;
		this.tmpVec3[1] = y;
		this.tmpVec3[2] = 1;
		mat4.scale(this.matMV, this.tmpVec3);
	};
	GLWrap_.prototype.rotateZ = function (a)
	{
		if (a === 0)
			return;
		mat4.rotateZ(this.matMV, a);
	};
	GLWrap_.prototype.updateModelView = function()
	{
		var anydiff = false;
		for (var i = 0; i < 16; i++)
		{
			if (this.lastMV[i] !== this.matMV[i])
			{
				anydiff = true;
				break;
			}
		}
		if (!anydiff)
			return;
		var b = this.pushBatch();
		b.type = BATCH_UPDATEMODELVIEW;
		if (b.mat4param)
			mat4.set(this.matMV, b.mat4param);
		else
			b.mat4param = mat4.create(this.matMV);
		mat4.set(this.matMV, this.lastMV);
		this.hasQuadBatchTop = false;
		this.hasPointBatchTop = false;
	};
	/*
	var debugBatch = false;
	jQuery(document).mousedown(
		function(info) {
			if (info.which === 2)
				debugBatch = true;
		}
	);
	*/
	function GLBatchJob(type_, glwrap_)
	{
		this.type = type_;
		this.glwrap = glwrap_;
		this.gl = glwrap_.gl;
		this.opacityParam = 0;		// for setOpacity()
		this.startIndex = 0;		// for quad()
		this.indexCount = 0;		// "
		this.texParam = null;		// for setTexture()
		this.mat4param = null;		// for updateModelView()
		this.shaderParams = [];		// for user parameters
		cr.seal(this);
	};
	GLBatchJob.prototype.doSetTexture = function ()
	{
		this.gl.bindTexture(this.gl.TEXTURE_2D, this.texParam);
	};
	GLBatchJob.prototype.doSetTexture1 = function ()
	{
		var gl = this.gl;
		gl.activeTexture(gl.TEXTURE1);
		gl.bindTexture(gl.TEXTURE_2D, this.texParam);
		gl.activeTexture(gl.TEXTURE0);
	};
	GLBatchJob.prototype.doSetOpacity = function ()
	{
		var o = this.opacityParam;
		var glwrap = this.glwrap;
		glwrap.currentOpacity = o;
		var curProg = glwrap.currentShader;
		if (curProg.locOpacity)
			this.gl.uniform1f(curProg.locOpacity, o);
	};
	GLBatchJob.prototype.doQuad = function ()
	{
		this.gl.drawElements(this.gl.TRIANGLES, this.indexCount, this.gl.UNSIGNED_SHORT, this.startIndex * 2);
	};
	GLBatchJob.prototype.doSetBlend = function ()
	{
		this.gl.blendFunc(this.startIndex, this.indexCount);
	};
	GLBatchJob.prototype.doUpdateModelView = function ()
	{
		var i, len, s, shaderPrograms = this.glwrap.shaderPrograms, currentProgram = this.glwrap.currentProgram;
		for (i = 0, len = shaderPrograms.length; i < len; i++)
		{
			s = shaderPrograms[i];
			if (i === currentProgram && s.locMatMV)
			{
				this.gl.uniformMatrix4fv(s.locMatMV, false, this.mat4param);
				s.hasCurrentMatMV = true;
			}
			else
				s.hasCurrentMatMV = false;
		}
		mat4.set(this.mat4param, this.glwrap.currentMV);
	};
	GLBatchJob.prototype.doRenderToTexture = function ()
	{
		var gl = this.gl;
		var glwrap = this.glwrap;
		if (this.texParam)
		{
			if (glwrap.lastTexture1 === this.texParam)
			{
				gl.activeTexture(gl.TEXTURE1);
				gl.bindTexture(gl.TEXTURE_2D, null);
				glwrap.lastTexture1 = null;
				gl.activeTexture(gl.TEXTURE0);
			}
			gl.bindFramebuffer(gl.FRAMEBUFFER, glwrap.fbo);
			gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, this.texParam, 0);
		}
		else
		{
			gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, null, 0);
			gl.bindFramebuffer(gl.FRAMEBUFFER, null);
		}
	};
	GLBatchJob.prototype.doClear = function ()
	{
		var gl = this.gl;
		if (this.startIndex === 0)		// clear whole surface
		{
			gl.clearColor(this.mat4param[0], this.mat4param[1], this.mat4param[2], this.mat4param[3]);
			gl.clear(gl.COLOR_BUFFER_BIT);
		}
		else							// clear rectangle
		{
			gl.enable(gl.SCISSOR_TEST);
			gl.scissor(this.mat4param[0], this.mat4param[1], this.mat4param[2], this.mat4param[3]);
			gl.clearColor(0, 0, 0, 0);
			gl.clear(this.gl.COLOR_BUFFER_BIT);
			gl.disable(gl.SCISSOR_TEST);
		}
	};
	GLBatchJob.prototype.doPoints = function ()
	{
		var gl = this.gl;
		var glwrap = this.glwrap;
		var s = glwrap.shaderPrograms[1];
		gl.useProgram(s.shaderProgram);
		if (!s.hasCurrentMatMV && s.locMatMV)
		{
			gl.uniformMatrix4fv(s.locMatMV, false, glwrap.currentMV);
			s.hasCurrentMatMV = true;
		}
		gl.enableVertexAttribArray(s.locAPos);
		gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.pointBuffer);
		gl.vertexAttribPointer(s.locAPos, 4, gl.FLOAT, false, 0, 0);
		gl.drawArrays(gl.POINTS, this.startIndex / 4, this.indexCount);
		s = glwrap.currentShader;
		gl.useProgram(s.shaderProgram);
		if (s.locAPos >= 0)
		{
			gl.enableVertexAttribArray(s.locAPos);
			gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.vertexBuffers[glwrap.curBuffer]);
			gl.vertexAttribPointer(s.locAPos, 2, gl.FLOAT, false, 0, 0);
		}
		if (s.locATex >= 0)
		{
			gl.enableVertexAttribArray(s.locATex);
			gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.texcoordBuffers[glwrap.curBuffer]);
			gl.vertexAttribPointer(s.locATex, 2, gl.FLOAT, false, 0, 0);
		}
	};
	GLBatchJob.prototype.doSetProgram = function ()
	{
		var gl = this.gl;
		var glwrap = this.glwrap;
		var s = glwrap.shaderPrograms[this.startIndex];		// recycled param to save memory
		glwrap.currentProgram = this.startIndex;			// current batch program
		glwrap.currentShader = s;
		gl.useProgram(s.shaderProgram);						// switch to
		if (!s.hasCurrentMatMV && s.locMatMV)
		{
			gl.uniformMatrix4fv(s.locMatMV, false, glwrap.currentMV);
			s.hasCurrentMatMV = true;
		}
		if (s.locOpacity)
			gl.uniform1f(s.locOpacity, glwrap.currentOpacity);
		if (s.locAPos >= 0)
		{
			gl.enableVertexAttribArray(s.locAPos);
			gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.vertexBuffers[glwrap.curBuffer]);
			gl.vertexAttribPointer(s.locAPos, 2, gl.FLOAT, false, 0, 0);
		}
		if (s.locATex >= 0)
		{
			gl.enableVertexAttribArray(s.locATex);
			gl.bindBuffer(gl.ARRAY_BUFFER, glwrap.texcoordBuffers[glwrap.curBuffer]);
			gl.vertexAttribPointer(s.locATex, 2, gl.FLOAT, false, 0, 0);
		}
	}
	GLBatchJob.prototype.doSetProgramParameters = function ()
	{
		var i, len, s = this.glwrap.currentShader;
		var gl = this.gl;
		var mat4param = this.mat4param;
		if (s.locSamplerBack && this.glwrap.lastTexture1 !== this.texParam)
		{
			gl.activeTexture(gl.TEXTURE1);
			gl.bindTexture(gl.TEXTURE_2D, this.texParam);
			this.glwrap.lastTexture1 = this.texParam;
			gl.activeTexture(gl.TEXTURE0);
		}
		if (s.locPixelWidth)
			gl.uniform1f(s.locPixelWidth, mat4param[0]);
		if (s.locPixelHeight)
			gl.uniform1f(s.locPixelHeight, mat4param[1]);
		if (s.locDestStart)
			gl.uniform2f(s.locDestStart, mat4param[2], mat4param[3]);
		if (s.locDestEnd)
			gl.uniform2f(s.locDestEnd, mat4param[4], mat4param[5]);
		if (s.locLayerScale)
			gl.uniform1f(s.locLayerScale, mat4param[6]);
		if (s.locLayerAngle)
			gl.uniform1f(s.locLayerAngle, mat4param[7]);
		if (s.locViewOrigin)
			gl.uniform2f(s.locViewOrigin, mat4param[8], mat4param[9]);
		if (s.locSeconds)
			gl.uniform1f(s.locSeconds, cr.performance_now() / 1000.0);
		if (s.parameters.length)
		{
			for (i = 0, len = s.parameters.length; i < len; i++)
			{
				gl.uniform1f(s.parameters[i][1], this.shaderParams[i]);
			}
		}
	};
	GLWrap_.prototype.pushBatch = function ()
	{
		if (this.batchPtr === this.batch.length)
			this.batch.push(new GLBatchJob(BATCH_NULL, this));
		return this.batch[this.batchPtr++];
	};
	GLWrap_.prototype.endBatch = function ()
	{
		if (this.batchPtr === 0)
			return;
		if (this.gl.isContextLost())
			return;
		var gl = this.gl;
		if (this.pointPtr > 0)
		{
			gl.bindBuffer(gl.ARRAY_BUFFER, this.pointBuffer);
			gl.bufferData(gl.ARRAY_BUFFER, this.pointData.subarray(0, this.pointPtr), gl.STREAM_DRAW);
			if (s && s.locAPos >= 0 && s.name === "<point>")
				gl.vertexAttribPointer(s.locAPos, 4, gl.FLOAT, false, 0, 0);
		}
		if (this.vertexPtr > 0)
		{
			var s = this.currentShader;
			gl.bindBuffer(gl.ARRAY_BUFFER, this.vertexBuffers[this.curBuffer]);
			gl.bufferData(gl.ARRAY_BUFFER, this.vertexData.subarray(0, this.vertexPtr), gl.STREAM_DRAW);
			if (s && s.locAPos >= 0 && s.name !== "<point>")
				gl.vertexAttribPointer(s.locAPos, 2, gl.FLOAT, false, 0, 0);
			gl.bindBuffer(gl.ARRAY_BUFFER, this.texcoordBuffers[this.curBuffer]);
			gl.bufferData(gl.ARRAY_BUFFER, this.texcoordData.subarray(0, this.vertexPtr), gl.STREAM_DRAW);
			if (s && s.locATex >= 0 && s.name !== "<point>")
				gl.vertexAttribPointer(s.locATex, 2, gl.FLOAT, false, 0, 0);
		}
		var i, len, b;
		for (i = 0, len = this.batchPtr; i < len; i++)
		{
			b = this.batch[i];
			switch (b.type) {
			case BATCH_QUAD:
				b.doQuad();
				break;
			case BATCH_SETTEXTURE:
				b.doSetTexture();
				break;
			case BATCH_SETOPACITY:
				b.doSetOpacity();
				break;
			case BATCH_SETBLEND:
				b.doSetBlend();
				break;
			case BATCH_UPDATEMODELVIEW:
				b.doUpdateModelView();
				break;
			case BATCH_RENDERTOTEXTURE:
				b.doRenderToTexture();
				break;
			case BATCH_CLEAR:
				b.doClear();
				break;
			case BATCH_POINTS:
				b.doPoints();
				break;
			case BATCH_SETPROGRAM:
				b.doSetProgram();
				break;
			case BATCH_SETPROGRAMPARAMETERS:
				b.doSetProgramParameters();
				break;
			case BATCH_SETTEXTURE1:
				b.doSetTexture1();
				break;
			}
		}
		this.batchPtr = 0;
		this.vertexPtr = 0;
		this.pointPtr = 0;
		this.hasQuadBatchTop = false;
		this.hasPointBatchTop = false;
		this.curBuffer++;
		if (this.curBuffer >= MULTI_BUFFERS)
			this.curBuffer = 0;
	};
	GLWrap_.prototype.setOpacity = function (op)
	{
		if (op === this.lastOpacity)
			return;
		var b = this.pushBatch();
		b.type = BATCH_SETOPACITY;
		b.opacityParam = op;
		this.lastOpacity = op;
		this.hasQuadBatchTop = false;
		this.hasPointBatchTop = false;
	};
	GLWrap_.prototype.setTexture = function (tex)
	{
		if (tex === this.lastTexture0)
			return;
;
		var b = this.pushBatch();
		b.type = BATCH_SETTEXTURE;
		b.texParam = tex;
		this.lastTexture0 = tex;
		this.hasQuadBatchTop = false;
		this.hasPointBatchTop = false;
	};
	GLWrap_.prototype.setBlend = function (s, d)
	{
		if (s === this.lastSrcBlend && d === this.lastDestBlend)
			return;
		var b = this.pushBatch();
		b.type = BATCH_SETBLEND;
		b.startIndex = s;		// recycle params to save memory
		b.indexCount = d;
		this.lastSrcBlend = s;
		this.lastDestBlend = d;
		this.hasQuadBatchTop = false;
		this.hasPointBatchTop = false;
	};
	GLWrap_.prototype.isPremultipliedAlphaBlend = function ()
	{
		return (this.lastSrcBlend === this.gl.ONE && this.lastDestBlend === this.gl.ONE_MINUS_SRC_ALPHA);
	};
	GLWrap_.prototype.setAlphaBlend = function ()
	{
		this.setBlend(this.gl.ONE, this.gl.ONE_MINUS_SRC_ALPHA);
	};
	GLWrap_.prototype.setNoPremultiplyAlphaBlend = function ()
	{
		this.setBlend(this.gl.SRC_ALPHA, this.gl.ONE_MINUS_SRC_ALPHA);
	};
	var LAST_VERTEX = MAX_VERTICES * 2 - 8;
	GLWrap_.prototype.quad = function(tlx, tly, trx, try_, brx, bry, blx, bly)
	{
		if (this.vertexPtr >= LAST_VERTEX)
			this.endBatch();
		var v = this.vertexPtr;			// vertex cursor
		var vd = this.vertexData;		// vertex data array
		var td = this.texcoordData;		// texture coord data array
		if (this.hasQuadBatchTop)
		{
			this.batch[this.batchPtr - 1].indexCount += 6;
		}
		else
		{
			var b = this.pushBatch();
			b.type = BATCH_QUAD;
			b.startIndex = (v / 4) * 3;
			b.indexCount = 6;
			this.hasQuadBatchTop = true;
			this.hasPointBatchTop = false;
		}
		vd[v] = tlx;
		td[v++] = 0;
		vd[v] = tly;
		td[v++] = 0;
		vd[v] = trx;
		td[v++] = 1;
		vd[v] = try_;
		td[v++] = 0;
		vd[v] = brx;
		td[v++] = 1;
		vd[v] = bry;
		td[v++] = 1;
		vd[v] = blx;
		td[v++] = 0;
		vd[v] = bly;
		td[v++] = 1;
		this.vertexPtr = v;
	};
	GLWrap_.prototype.quadTex = function(tlx, tly, trx, try_, brx, bry, blx, bly, rcTex)
	{
		if (this.vertexPtr >= LAST_VERTEX)
			this.endBatch();
		var v = this.vertexPtr;			// vertex cursor
		var vd = this.vertexData;		// vertex data array
		var td = this.texcoordData;		// texture coord data array
		if (this.hasQuadBatchTop)
		{
			this.batch[this.batchPtr - 1].indexCount += 6;
		}
		else
		{
			var b = this.pushBatch();
			b.type = BATCH_QUAD;
			b.startIndex = (v / 4) * 3;
			b.indexCount = 6;
			this.hasQuadBatchTop = true;
			this.hasPointBatchTop = false;
		}
		var rc_left = rcTex.left;
		var rc_top = rcTex.top;
		var rc_right = rcTex.right;
		var rc_bottom = rcTex.bottom;
		vd[v] = tlx;
		td[v++] = rc_left;
		vd[v] = tly;
		td[v++] = rc_top;
		vd[v] = trx;
		td[v++] = rc_right;
		vd[v] = try_;
		td[v++] = rc_top;
		vd[v] = brx;
		td[v++] = rc_right;
		vd[v] = bry;
		td[v++] = rc_bottom;
		vd[v] = blx;
		td[v++] = rc_left;
		vd[v] = bly;
		td[v++] = rc_bottom;
		this.vertexPtr = v;
	};
	GLWrap_.prototype.quadTexUV = function(tlx, tly, trx, try_, brx, bry, blx, bly, tlu, tlv, tru, trv, bru, brv, blu, blv)
	{
		if (this.vertexPtr >= LAST_VERTEX)
			this.endBatch();
		var v = this.vertexPtr;			// vertex cursor
		var vd = this.vertexData;		// vertex data array
		var td = this.texcoordData;		// texture coord data array
		if (this.hasQuadBatchTop)
		{
			this.batch[this.batchPtr - 1].indexCount += 6;
		}
		else
		{
			var b = this.pushBatch();
			b.type = BATCH_QUAD;
			b.startIndex = (v / 4) * 3;
			b.indexCount = 6;
			this.hasQuadBatchTop = true;
			this.hasPointBatchTop = false;
		}
		vd[v] = tlx;
		td[v++] = tlu;
		vd[v] = tly;
		td[v++] = tlv;
		vd[v] = trx;
		td[v++] = tru;
		vd[v] = try_;
		td[v++] = trv;
		vd[v] = brx;
		td[v++] = bru;
		vd[v] = bry;
		td[v++] = brv;
		vd[v] = blx;
		td[v++] = blu;
		vd[v] = bly;
		td[v++] = blv;
		this.vertexPtr = v;
	};
	var LAST_POINT = MAX_POINTS - 4;
	GLWrap_.prototype.point = function(x_, y_, size_, opacity_)
	{
		if (this.pointPtr >= LAST_POINT)
			this.endBatch();
		var p = this.pointPtr;			// point cursor
		var pd = this.pointData;		// point data array
		if (this.hasPointBatchTop)
		{
			this.batch[this.batchPtr - 1].indexCount++;
		}
		else
		{
			var b = this.pushBatch();
			b.type = BATCH_POINTS;
			b.startIndex = p;
			b.indexCount = 1;
			this.hasPointBatchTop = true;
			this.hasQuadBatchTop = false;
		}
		pd[p++] = x_;
		pd[p++] = y_;
		pd[p++] = size_;
		pd[p++] = opacity_;
		this.pointPtr = p;
	};
	GLWrap_.prototype.switchProgram = function (progIndex)
	{
		if (this.lastProgram === progIndex)
			return;			// no change
		var shaderProg = this.shaderPrograms[progIndex];
		if (!shaderProg)
		{
			if (this.lastProgram === 0)
				return;								// already on default shader
			progIndex = 0;
			shaderProg = this.shaderPrograms[0];
		}
		var b = this.pushBatch();
		b.type = BATCH_SETPROGRAM;
		b.startIndex = progIndex;
		this.lastProgram = progIndex;
		this.hasQuadBatchTop = false;
		this.hasPointBatchTop = false;
	};
	GLWrap_.prototype.programUsesDest = function (progIndex)
	{
		var s = this.shaderPrograms[progIndex];
		return !!(s.locDestStart || s.locDestEnd);
	};
	GLWrap_.prototype.programUsesCrossSampling = function (progIndex)
	{
		var s = this.shaderPrograms[progIndex];
		return !!(s.locDestStart || s.locDestEnd || s.crossSampling);
	};
	GLWrap_.prototype.programExtendsBox = function (progIndex)
	{
		var s = this.shaderPrograms[progIndex];
		return s.extendBoxHorizontal !== 0 || s.extendBoxVertical !== 0;
	};
	GLWrap_.prototype.getProgramBoxExtendHorizontal = function (progIndex)
	{
		return this.shaderPrograms[progIndex].extendBoxHorizontal;
	};
	GLWrap_.prototype.getProgramBoxExtendVertical = function (progIndex)
	{
		return this.shaderPrograms[progIndex].extendBoxVertical;
	};
	GLWrap_.prototype.getProgramParameterType = function (progIndex, paramIndex)
	{
		return this.shaderPrograms[progIndex].parameters[paramIndex][2];
	};
	GLWrap_.prototype.programIsAnimated = function (progIndex)
	{
		return this.shaderPrograms[progIndex].animated;
	};
	GLWrap_.prototype.setProgramParameters = function (backTex, pixelWidth, pixelHeight, destStartX, destStartY, destEndX, destEndY, layerScale, layerAngle, viewOriginLeft, viewOriginTop, params)
	{
		var i, len;
		var s = this.shaderPrograms[this.lastProgram];
		var b, mat4param, shaderParams;
		if (s.hasAnyOptionalUniforms || params.length)
		{
			b = this.pushBatch();
			b.type = BATCH_SETPROGRAMPARAMETERS;
			if (b.mat4param)
				mat4.set(this.matMV, b.mat4param);
			else
				b.mat4param = mat4.create();
			mat4param = b.mat4param;
			mat4param[0] = pixelWidth;
			mat4param[1] = pixelHeight;
			mat4param[2] = destStartX;
			mat4param[3] = destStartY;
			mat4param[4] = destEndX;
			mat4param[5] = destEndY;
			mat4param[6] = layerScale;
			mat4param[7] = layerAngle;
			mat4param[8] = viewOriginLeft;
			mat4param[9] = viewOriginTop;
			if (s.locSamplerBack)
			{
;
				b.texParam = backTex;
			}
			else
				b.texParam = null;
			if (params.length)
			{
				shaderParams = b.shaderParams;
				shaderParams.length = params.length;
				for (i = 0, len = params.length; i < len; i++)
					shaderParams[i] = params[i];
			}
			this.hasQuadBatchTop = false;
			this.hasPointBatchTop = false;
		}
	};
	GLWrap_.prototype.clear = function (r, g, b_, a)
	{
		var b = this.pushBatch();
		b.type = BATCH_CLEAR;
		b.startIndex = 0;					// clear all mode
		if (!b.mat4param)
			b.mat4param = mat4.create();
		b.mat4param[0] = r;
		b.mat4param[1] = g;
		b.mat4param[2] = b_;
		b.mat4param[3] = a;
		this.hasQuadBatchTop = false;
		this.hasPointBatchTop = false;
	};
	GLWrap_.prototype.clearRect = function (x, y, w, h)
	{
		var b = this.pushBatch();
		b.type = BATCH_CLEAR;
		b.startIndex = 1;					// clear rect mode
		if (!b.mat4param)
			b.mat4param = mat4.create();
		b.mat4param[0] = x;
		b.mat4param[1] = y;
		b.mat4param[2] = w;
		b.mat4param[3] = h;
		this.hasQuadBatchTop = false;
		this.hasPointBatchTop = false;
	};
	GLWrap_.prototype.present = function ()
	{
		this.endBatch();
		this.gl.flush();
		/*
		if (debugBatch)
		{
;
			debugBatch = false;
		}
		*/
	};
	function nextHighestPowerOfTwo(x) {
		--x;
		for (var i = 1; i < 32; i <<= 1) {
			x = x | x >> i;
		}
		return x + 1;
	}
	var all_textures = [];
	var textures_by_src = {};
	var BF_RGBA8 = 0;
	var BF_RGB8 = 1;
	var BF_RGBA4 = 2;
	var BF_RGB5_A1 = 3;
	var BF_RGB565 = 4;
	GLWrap_.prototype.loadTexture = function (img, tiling, linearsampling, pixelformat, tiletype)
	{
		tiling = !!tiling;
		linearsampling = !!linearsampling;
		var tex_key = img.src + "," + tiling + "," + linearsampling + (tiling ? ("," + tiletype) : "");
		var webGL_texture = null;
		if (typeof img.src !== "undefined" && textures_by_src.hasOwnProperty(tex_key))
		{
			webGL_texture = textures_by_src[tex_key];
			webGL_texture.c2refcount++;
			return webGL_texture;
		}
		this.endBatch();
;
		var gl = this.gl;
		var isPOT = (cr.isPOT(img.width) && cr.isPOT(img.height));
		webGL_texture = gl.createTexture();
		gl.bindTexture(gl.TEXTURE_2D, webGL_texture);
		gl.pixelStorei(gl["UNPACK_PREMULTIPLY_ALPHA_WEBGL"], true);
		var internalformat = gl.RGBA;
		var format = gl.RGBA;
		var type = gl.UNSIGNED_BYTE;
		if (pixelformat && !this.isIE)
		{
			switch (pixelformat) {
			case BF_RGB8:
				internalformat = gl.RGB;
				format = gl.RGB;
				break;
			case BF_RGBA4:
				type = gl.UNSIGNED_SHORT_4_4_4_4;
				break;
			case BF_RGB5_A1:
				type = gl.UNSIGNED_SHORT_5_5_5_1;
				break;
			case BF_RGB565:
				internalformat = gl.RGB;
				format = gl.RGB;
				type = gl.UNSIGNED_SHORT_5_6_5;
				break;
			}
		}
		if (!isPOT && tiling)
		{
			var canvas = document.createElement("canvas");
			canvas.width = cr.nextHighestPowerOfTwo(img.width);
			canvas.height = cr.nextHighestPowerOfTwo(img.height);
			var ctx = canvas.getContext("2d");
			ctx.drawImage(img,
						  0, 0, img.width, img.height,
						  0, 0, canvas.width, canvas.height);
			gl.texImage2D(gl.TEXTURE_2D, 0, internalformat, format, type, canvas);
		}
		else
			gl.texImage2D(gl.TEXTURE_2D, 0, internalformat, format, type, img);
		if (tiling)
		{
			if (tiletype === "repeat-x")
			{
				gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.REPEAT);
				gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
			}
			else if (tiletype === "repeat-y")
			{
				gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
				gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.REPEAT);
			}
			else
			{
				gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.REPEAT);
				gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.REPEAT);
			}
		}
		else
		{
			gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
			gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
		}
		if (linearsampling)
		{
			gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);
			if (isPOT)
			{
				gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_LINEAR);
				gl.generateMipmap(gl.TEXTURE_2D);
			}
			else
				gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);
		}
		else
		{
			gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);
			gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);
		}
		gl.bindTexture(gl.TEXTURE_2D, null);
		this.lastTexture0 = null;
		webGL_texture.c2width = img.width;
		webGL_texture.c2height = img.height;
		webGL_texture.c2refcount = 1;
		webGL_texture.c2texkey = tex_key;
		all_textures.push(webGL_texture);
		textures_by_src[tex_key] = webGL_texture;
		return webGL_texture;
	};
	GLWrap_.prototype.createEmptyTexture = function (w, h, linearsampling, _16bit, tiling)
	{
		this.endBatch();
		var gl = this.gl;
		if (this.isIE)
			_16bit = false;
		var webGL_texture = gl.createTexture();
		gl.bindTexture(gl.TEXTURE_2D, webGL_texture);
		gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, w, h, 0, gl.RGBA, _16bit ? gl.UNSIGNED_SHORT_4_4_4_4 : gl.UNSIGNED_BYTE, null);
		if (tiling)
		{
			gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.REPEAT);
			gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.REPEAT);
		}
		else
		{
			gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
			gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
		}
		gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, linearsampling ? gl.LINEAR : gl.NEAREST);
		gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, linearsampling ? gl.LINEAR : gl.NEAREST);
		gl.bindTexture(gl.TEXTURE_2D, null);
		this.lastTexture0 = null;
		webGL_texture.c2width = w;
		webGL_texture.c2height = h;
		all_textures.push(webGL_texture);
		return webGL_texture;
	};
	GLWrap_.prototype.videoToTexture = function (video_, texture_, _16bit)
	{
		this.endBatch();
		var gl = this.gl;
		if (this.isIE)
			_16bit = false;
		gl.bindTexture(gl.TEXTURE_2D, texture_);
		gl.pixelStorei(gl["UNPACK_PREMULTIPLY_ALPHA_WEBGL"], true);
		gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, _16bit ? gl.UNSIGNED_SHORT_4_4_4_4 : gl.UNSIGNED_BYTE, video_);
		gl.bindTexture(gl.TEXTURE_2D, null);
		this.lastTexture0 = null;
	};
	GLWrap_.prototype.deleteTexture = function (tex)
	{
		if (!tex)
			return;
		if (typeof tex.c2refcount !== "undefined" && tex.c2refcount > 1)
		{
			tex.c2refcount--;
			return;
		}
		this.endBatch();
		if (tex === this.lastTexture0)
		{
			this.gl.bindTexture(this.gl.TEXTURE_2D, null);
			this.lastTexture0 = null;
		}
		if (tex === this.lastTexture1)
		{
			this.gl.activeTexture(this.gl.TEXTURE1);
			this.gl.bindTexture(this.gl.TEXTURE_2D, null);
			this.gl.activeTexture(this.gl.TEXTURE0);
			this.lastTexture1 = null;
		}
		cr.arrayFindRemove(all_textures, tex);
		if (typeof tex.c2texkey !== "undefined")
			delete textures_by_src[tex.c2texkey];
		this.gl.deleteTexture(tex);
	};
	GLWrap_.prototype.estimateVRAM = function ()
	{
		var total = this.width * this.height * 4 * 2;
		var i, len, t;
		for (i = 0, len = all_textures.length; i < len; i++)
		{
			t = all_textures[i];
			total += (t.c2width * t.c2height * 4);
		}
		return total;
	};
	GLWrap_.prototype.textureCount = function ()
	{
		return all_textures.length;
	};
	GLWrap_.prototype.setRenderingToTexture = function (tex)
	{
		if (tex === this.renderToTex)
			return;
;
		var b = this.pushBatch();
		b.type = BATCH_RENDERTOTEXTURE;
		b.texParam = tex;
		this.renderToTex = tex;
		this.hasQuadBatchTop = false;
		this.hasPointBatchTop = false;
	};
	cr.GLWrap = GLWrap_;
}());
;
(function()
{
	function Runtime(canvas)
	{
		if (!canvas || (!canvas.getContext && !canvas["dc"]))
			return;
		if (canvas["c2runtime"])
			return;
		else
			canvas["c2runtime"] = this;
		var self = this;
		this.isCrosswalk = /crosswalk/i.test(navigator.userAgent) || /xwalk/i.test(navigator.userAgent) || !!(typeof window["c2isCrosswalk"] !== "undefined" && window["c2isCrosswalk"]);
		this.isPhoneGap = (!this.isCrosswalk && (typeof window["device"] !== "undefined" && (typeof window["device"]["cordova"] !== "undefined" || typeof window["device"]["phonegap"] !== "undefined")));
		this.isDirectCanvas = !!canvas["dc"];
		this.isAppMobi = (typeof window["AppMobi"] !== "undefined" || this.isDirectCanvas);
		this.isCocoonJs = !!window["c2cocoonjs"];
		if (this.isCocoonJs)
		{
			CocoonJS["App"]["onSuspended"].addEventListener(function() {
				self["setSuspended"](true);
			});
			CocoonJS["App"]["onActivated"].addEventListener(function () {
				self["setSuspended"](false);
			});
		}
		this.isDomFree = this.isDirectCanvas || this.isCocoonJs;
		this.isTizen = /tizen/i.test(navigator.userAgent);
		this.isAndroid = /android/i.test(navigator.userAgent) && !this.isTizen;		// tizen says "like Android"
		this.isIE = /msie/i.test(navigator.userAgent) || /trident/i.test(navigator.userAgent);
		this.isiPhone = /iphone/i.test(navigator.userAgent) || /ipod/i.test(navigator.userAgent);	// treat ipod as an iphone
		this.isiPad = /ipad/i.test(navigator.userAgent);
		this.isiOS = this.isiPhone || this.isiPad;
		this.isiPhoneiOS6 = (this.isiPhone && /os\s6/i.test(navigator.userAgent));
		this.isChrome = /chrome/i.test(navigator.userAgent) || /chromium/i.test(navigator.userAgent);
		this.isAmazonWebApp = /amazonwebappplatform/i.test(navigator.userAgent);
		this.isFirefox = /firefox/i.test(navigator.userAgent);
		this.isSafari = !this.isChrome && /safari/i.test(navigator.userAgent);		// Chrome includes Safari in UA
		this.isWindows = /windows/i.test(navigator.userAgent);
		this.isNodeWebkit = (typeof window["c2nodewebkit"] !== "undefined" || /nodewebkit/i.test(navigator.userAgent));
		this.isArcade = (typeof window["is_scirra_arcade"] !== "undefined");
		this.isWindows8App = !!(typeof window["c2isWindows8"] !== "undefined" && window["c2isWindows8"]);
		this.isWindowsPhone8 = !!(typeof window["c2isWindowsPhone8"] !== "undefined" && window["c2isWindowsPhone8"]);
		this.isBlackberry10 = !!(typeof window["c2isBlackberry10"] !== "undefined" && window["c2isBlackberry10"]);
		this.isAndroidStockBrowser = (this.isAndroid && !this.isChrome && !this.isFirefox && !this.isAmazonWebApp && !this.isDomFree);
		this.devicePixelRatio = 1;
		this.isMobile = (this.isPhoneGap || this.isCrosswalk || this.isAppMobi || this.isCocoonJs || this.isAndroid || this.isiOS || this.isWindowsPhone8 || this.isBlackberry10 || this.isTizen);
		if (!this.isMobile)
			this.isMobile = /(blackberry|bb10|playbook|palm|symbian|nokia|windows\s+ce|phone|mobile|tablet)/i.test(navigator.userAgent);
		if (typeof cr_is_preview !== "undefined" && !this.isNodeWebkit && (window.location.search === "?nw" || /nodewebkit/i.test(navigator.userAgent)))
		{
			this.isNodeWebkit = true;
		}
		this.isDebug = (typeof cr_is_preview !== "undefined" && window.location.search.indexOf("debug") > -1)
		this.canvas = canvas;
		this.canvasdiv = document.getElementById("c2canvasdiv");
		this.gl = null;
		this.glwrap = null;
		this.ctx = null;
		this.fullscreenOldMarginCss = "";
		this.firstInFullscreen = false;
		this.oldWidth = 0;		// for restoring non-fullscreen canvas after fullscreen
		this.oldHeight = 0;
		this.canvas.oncontextmenu = function (e) { if (e.preventDefault) e.preventDefault(); return false; };
		this.canvas.onselectstart = function (e) { if (e.preventDefault) e.preventDefault(); return false; };
		if (this.isDirectCanvas)
			window["c2runtime"] = this;
		if (this.isNodeWebkit)
		{
			window.ondragover = function(e) { e.preventDefault(); return false; };
			window.ondrop = function(e) { e.preventDefault(); return false; };
			require("nw.gui")["App"]["clearCache"]();
		}
		this.width = canvas.width;
		this.height = canvas.height;
		this.draw_width = this.width;
		this.draw_height = this.height;
		this.cssWidth = this.width;
		this.cssHeight = this.height;
		this.lastWindowWidth = window.innerWidth;
		this.lastWindowHeight = window.innerHeight;
		this.redraw = true;
		this.isSuspended = false;
		this.blockSuspend = false;
		if (!Date.now) {
		  Date.now = function now() {
			return +new Date();
		  };
		}
		this.plugins = [];
		this.types = {};
		this.types_by_index = [];
		this.behaviors = [];
		this.layouts = {};
		this.layouts_by_index = [];
		this.eventsheets = {};
		this.eventsheets_by_index = [];
		this.wait_for_textures = [];        // for blocking until textures loaded
		this.triggers_to_postinit = [];
		this.all_global_vars = [];
		this.all_local_vars = [];
		this.solidBehavior = null;
		this.jumpthruBehavior = null;
		this.deathRow = new cr.ObjectSet();
		this.isInClearDeathRow = false;
		this.isInOnDestroy = 0;					// needs to support recursion so increments and decrements and is true if > 0
		this.isRunningEvents = false;
		this.createRow = [];
		this.isLoadingState = false;
		this.saveToSlot = "";
		this.loadFromSlot = "";
		this.loadFromJson = "";
		this.lastSaveJson = "";
		this.signalledContinuousPreview = false;
		this.suspendDrawing = false;		// for hiding display until continuous preview loads
		this.dt = 0;
        this.dt1 = 0;
		this.logictime = 0;			// used to calculate CPUUtilisation
		this.cpuutilisation = 0;
		this.zeroDtCount = 0;
        this.timescale = 1.0;
        this.kahanTime = new cr.KahanAdder();
		this.last_tick_time = 0;
		this.measuring_dt = true;
		this.fps = 0;
		this.last_fps_time = 0;
		this.tickcount = 0;
		this.execcount = 0;
		this.framecount = 0;        // for fps
		this.objectcount = 0;
		this.changelayout = null;
		this.destroycallbacks = [];
		this.event_stack = [];
		this.event_stack_index = -1;
		this.localvar_stack = [[]];
		this.localvar_stack_index = 0;
		this.trigger_depth = 0;		// recursion depth for triggers
		this.pushEventStack(null);
		this.loop_stack = [];
		this.loop_stack_index = -1;
		this.next_uid = 0;
		this.next_puid = 0;		// permanent unique ids
		this.layout_first_tick = true;
		this.family_count = 0;
		this.suspend_events = [];
		this.raf_id = 0;
		this.timeout_id = 0;
		this.isloading = true;
		this.loadingprogress = 0;
		this.isNodeFullscreen = false;
		this.stackLocalCount = 0;	// number of stack-based local vars for recursion
		this.halfFramerateMode = false;
		this.lastRafTime = 0;		// time of last requestAnimationFrame call
		this.ranLastRaf = false;	// false if last requestAnimationFrame was skipped for half framerate mode
		this.had_a_click = false;
		this.isInUserInputEvent = false;
        this.objects_to_tick = new cr.ObjectSet();
		this.objects_to_tick2 = new cr.ObjectSet();
		this.registered_collisions = [];
		this.temp_poly = new cr.CollisionPoly([]);
		this.temp_poly2 = new cr.CollisionPoly([]);
		this.allGroups = [];				// array of all event groups
        this.activeGroups = {};				// event group activation states
		this.cndsBySid = {};
		this.actsBySid = {};
		this.varsBySid = {};
		this.blocksBySid = {};
		this.running_layout = null;			// currently running layout
		this.layer_canvas = null;			// for layers "render-to-texture"
		this.layer_ctx = null;
		this.layer_tex = null;
		this.layout_tex = null;
		this.layout_canvas = null;
		this.layout_ctx = null;
		this.is_WebGL_context_lost = false;
		this.uses_background_blending = false;	// if any shader uses background blending, so entire layout renders to texture
		this.fx_tex = [null, null];
		this.fullscreen_scaling = 0;
		this.files_subfolder = "";			// path with project files
		this.objectsByUid = {};				// maps every in-use UID (as a string) to its instance
		this.loaderlogo = null;
		this.snapshotCanvas = null;
		this.snapshotData = "";
		this.load();
		this.isRetina = (!this.isDomFree && this.useHighDpi && !this.isAndroidStockBrowser);
		this.devicePixelRatio = (this.isRetina ? (window["devicePixelRatio"] || window["webkitDevicePixelRatio"] || window["mozDevicePixelRatio"] || window["msDevicePixelRatio"] || 1) : 1);
		this.ClearDeathRow();
		var attribs;
		var alpha_canvas = this.alphaBackground && !(this.isNodeWebkit || this.isWindows8App || this.isWindowsPhone8);
		if (this.fullscreen_mode > 0)
			this["setSize"](window.innerWidth, window.innerHeight, true);
		try {
			if (this.enableWebGL && (this.isCocoonJs || !this.isDomFree))
			{
				attribs = {
					"alpha": alpha_canvas,
					"depth": false,
					"antialias": false,
					"failIfMajorPerformanceCaveat": true
				};
				this.gl = (canvas.getContext("webgl", attribs) || canvas.getContext("experimental-webgl", attribs));
			}
		}
		catch (e) {
		}
		if (this.gl)
		{
;
			if (!this.isDomFree)
			{
				this.overlay_canvas = document.createElement("canvas");
				jQuery(this.overlay_canvas).appendTo(this.canvas.parentNode);
				this.overlay_canvas.oncontextmenu = function (e) { return false; };
				this.overlay_canvas.onselectstart = function (e) { return false; };
				this.overlay_canvas.width = this.cssWidth;
				this.overlay_canvas.height = this.cssHeight;
				jQuery(this.overlay_canvas).css({"width": this.cssWidth + "px",
												"height": this.cssHeight + "px"});
				this.positionOverlayCanvas();
				this.overlay_ctx = this.overlay_canvas.getContext("2d");
			}
			this.glwrap = new cr.GLWrap(this.gl, this.isMobile);
			this.glwrap.setSize(canvas.width, canvas.height);
			this.ctx = null;
			this.canvas.addEventListener("webglcontextlost", function (ev) {
				ev.preventDefault();
				self.onContextLost();
				console.log("[Construct 2] WebGL context lost");
				window["cr_setSuspended"](true);		// stop rendering
			}, false);
			this.canvas.addEventListener("webglcontextrestored", function (ev) {
				self.glwrap.initState();
				self.glwrap.setSize(self.glwrap.width, self.glwrap.height, true);
				self.layer_tex = null;
				self.layout_tex = null;
				self.fx_tex[0] = null;
				self.fx_tex[1] = null;
				self.onContextRestored();
				self.redraw = true;
				console.log("[Construct 2] WebGL context restored");
				window["cr_setSuspended"](false);		// resume rendering
			}, false);
			var i, len, j, lenj, k, lenk, t, s, l, y;
			for (i = 0, len = this.types_by_index.length; i < len; i++)
			{
				t = this.types_by_index[i];
				for (j = 0, lenj = t.effect_types.length; j < lenj; j++)
				{
					s = t.effect_types[j];
					s.shaderindex = this.glwrap.getShaderIndex(s.id);
					this.uses_background_blending = this.uses_background_blending || this.glwrap.programUsesDest(s.shaderindex);
				}
			}
			for (i = 0, len = this.layouts_by_index.length; i < len; i++)
			{
				l = this.layouts_by_index[i];
				for (j = 0, lenj = l.effect_types.length; j < lenj; j++)
				{
					s = l.effect_types[j];
					s.shaderindex = this.glwrap.getShaderIndex(s.id);
				}
				for (j = 0, lenj = l.layers.length; j < lenj; j++)
				{
					y = l.layers[j];
					for (k = 0, lenk = y.effect_types.length; k < lenk; k++)
					{
						s = y.effect_types[k];
						s.shaderindex = this.glwrap.getShaderIndex(s.id);
						this.uses_background_blending = this.uses_background_blending || this.glwrap.programUsesDest(s.shaderindex);
					}
				}
			}
		}
		else
		{
			if (this.fullscreen_mode > 0 && this.isDirectCanvas)
			{
;
				this.canvas = null;
				document.oncontextmenu = function (e) { return false; };
				document.onselectstart = function (e) { return false; };
				this.ctx = AppMobi["canvas"]["getContext"]("2d");
				try {
					this.ctx["samplingMode"] = this.linearSampling ? "smooth" : "sharp";
					this.ctx["globalScale"] = 1;
					this.ctx["HTML5CompatibilityMode"] = true;
					this.ctx["imageSmoothingEnabled"] = this.linearSampling;
				} catch(e){}
				if (this.width !== 0 && this.height !== 0)
				{
					this.ctx.width = this.width;
					this.ctx.height = this.height;
				}
			}
			if (!this.ctx)
			{
;
				if (this.isCocoonJs)
				{
					attribs = {
						"antialias": !!this.linearSampling,
						"alpha": alpha_canvas
					};
					this.ctx = canvas.getContext("2d", attribs);
				}
				else
				{
					attribs = {
						"alpha": alpha_canvas
					};
					this.ctx = canvas.getContext("2d", attribs);
				}
				this.ctx["webkitImageSmoothingEnabled"] = this.linearSampling;
				this.ctx["mozImageSmoothingEnabled"] = this.linearSampling;
				this.ctx["msImageSmoothingEnabled"] = this.linearSampling;
				this.ctx["imageSmoothingEnabled"] = this.linearSampling;
			}
			this.overlay_canvas = null;
			this.overlay_ctx = null;
		}
		this.tickFunc = function () { self.tick(); };
		if (window != window.top && !this.isDomFree && !this.isWindows8App)
		{
			document.addEventListener("mousedown", function () {
				window.focus();
			}, true);
			document.addEventListener("touchstart", function () {
				window.focus();
			}, true);
		}
		if (typeof cr_is_preview !== "undefined")
		{
			if (this.isCocoonJs)
				console.log("[Construct 2] In preview-over-wifi via CocoonJS mode");
			if (window.location.search.indexOf("continuous") > -1)
			{
				cr.logexport("Reloading for continuous preview");
				this.loadFromSlot = "__c2_continuouspreview";
				this.suspendDrawing = true;
			}
			if (this.pauseOnBlur && !this.isMobile)
			{
				jQuery(window).focus(function ()
				{
					self["setSuspended"](false);
				});
				jQuery(window).blur(function ()
				{
					self["setSuspended"](true);
				});
			}
		}
		if (this.fullscreen_mode === 0 && this.isRetina && this.devicePixelRatio > 1)
		{
			this["setSize"](this.original_width, this.original_height, true);
		}
		this.tryLockOrientation();
		this.go();			// run loading screen
		this.extra = {};
		cr.seal(this);
	};
	var webkitRepaintFlag = false;
	Runtime.prototype["setSize"] = function (w, h, force)
	{
		var offx = 0, offy = 0;
		var neww = 0, newh = 0, intscale = 0;
		var tryHideAddressBar = (this.isiPhoneiOS6 && this.isSafari && !navigator["standalone"] && !this.isDomFree && !this.isPhoneGap);
		if (tryHideAddressBar)
			h += 60;		// height of Safari iPhone iOS 6 address bar
		if (this.lastWindowWidth === w && this.lastWindowHeight === h && !force)
			return;
		this.lastWindowWidth = w;
		this.lastWindowHeight = h;
		var mode = this.fullscreen_mode;
		var orig_aspect, cur_aspect;
		var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || !!document["msFullscreenElement"] || document["fullScreen"] || this.isNodeFullscreen);
		if (!isfullscreen && this.fullscreen_mode === 0 && !force)
			return;			// ignore size events when not fullscreen and not using a fullscreen-in-browser mode
		if (isfullscreen && this.fullscreen_scaling > 0)
			mode = this.fullscreen_scaling;
		if (mode >= 4)
		{
			orig_aspect = this.original_width / this.original_height;
			cur_aspect = w / h;
			if (cur_aspect > orig_aspect)
			{
				neww = h * orig_aspect;
				if (mode === 5)	// integer scaling
				{
					intscale = neww / this.original_width;
					if (intscale > 1)
						intscale = Math.floor(intscale);
					else if (intscale < 1)
						intscale = 1 / Math.ceil(1 / intscale);
					neww = this.original_width * intscale;
					newh = this.original_height * intscale;
					offx = (w - neww) / 2;
					offy = (h - newh) / 2;
					w = neww;
					h = newh;
				}
				else
				{
					offx = (w - neww) / 2;
					w = neww;
				}
			}
			else
			{
				newh = w / orig_aspect;
				if (mode === 5)	// integer scaling
				{
					intscale = newh / this.original_height;
					if (intscale > 1)
						intscale = Math.floor(intscale);
					else if (intscale < 1)
						intscale = 1 / Math.ceil(1 / intscale);
					neww = this.original_width * intscale;
					newh = this.original_height * intscale;
					offx = (w - neww) / 2;
					offy = (h - newh) / 2;
					w = neww;
					h = newh;
				}
				else
				{
					offy = (h - newh) / 2;
					h = newh;
				}
			}
			if (isfullscreen && !this.isNodeWebkit)
			{
				offx = 0;
				offy = 0;
			}
			offx = Math.floor(offx);
			offy = Math.floor(offy);
			w = Math.floor(w);
			h = Math.floor(h);
		}
		else if (this.isNodeWebkit && this.isNodeFullscreen && this.fullscreen_mode_set === 0)
		{
			offx = Math.floor((w - this.original_width) / 2);
			offy = Math.floor((h - this.original_height) / 2);
			w = this.original_width;
			h = this.original_height;
		}
		if (mode < 2)
			this.aspect_scale = this.devicePixelRatio;
		if (this.isRetina && this.isiPad && this.devicePixelRatio > 1)	// don't apply to iPad 1-2
		{
			if (w >= 1024)
				w = 1023;		// 2046 retina pixels
			if (h >= 1024)
				h = 1023;
		}
		var multiplier = this.devicePixelRatio;
		this.cssWidth = w;
		this.cssHeight = h;
		this.width = Math.round(w * multiplier);
		this.height = Math.round(h * multiplier);
		this.redraw = true;
		if (this.wantFullscreenScalingQuality)
		{
			this.draw_width = this.width;
			this.draw_height = this.height;
			this.fullscreenScalingQuality = true;
		}
		else
		{
			if ((this.width < this.original_width && this.height < this.original_height) || mode === 1)
			{
				this.draw_width = this.width;
				this.draw_height = this.height;
				this.fullscreenScalingQuality = true;
			}
			else
			{
				this.draw_width = this.original_width;
				this.draw_height = this.original_height;
				this.fullscreenScalingQuality = false;
				/*var orig_aspect = this.original_width / this.original_height;
				var cur_aspect = this.width / this.height;
				if ((this.fullscreen_mode !== 2 && cur_aspect > orig_aspect) || (this.fullscreen_mode === 2 && cur_aspect < orig_aspect))
					this.aspect_scale = this.height / this.original_height;
				else
					this.aspect_scale = this.width / this.original_width;*/
				if (mode === 2)		// scale inner
				{
					orig_aspect = this.original_width / this.original_height;
					cur_aspect = this.lastWindowWidth / this.lastWindowHeight;
					if (cur_aspect < orig_aspect)
						this.draw_width = this.draw_height * cur_aspect;
					else if (cur_aspect > orig_aspect)
						this.draw_height = this.draw_width / cur_aspect;
				}
				else if (mode === 3)
				{
					orig_aspect = this.original_width / this.original_height;
					cur_aspect = this.lastWindowWidth / this.lastWindowHeight;
					if (cur_aspect > orig_aspect)
						this.draw_width = this.draw_height * cur_aspect;
					else if (cur_aspect < orig_aspect)
						this.draw_height = this.draw_width / cur_aspect;
				}
			}
		}
		if (this.canvasdiv && !this.isDomFree)
		{
			jQuery(this.canvasdiv).css({"width": w + "px",
										"height": h + "px",
										"margin-left": offx,
										"margin-top": offy});
			if (typeof cr_is_preview !== "undefined")
			{
				jQuery("#borderwrap").css({"width": w + "px",
											"height": h + "px"});
			}
		}
		if (this.canvas)
		{
			this.canvas.width = Math.round(w * multiplier);
			this.canvas.height = Math.round(h * multiplier);
			if (this.isRetina)
			{
				jQuery(this.canvas).css({"width": w + "px",
										"height": h + "px"});
			}
		}
		if (this.overlay_canvas)
		{
			this.overlay_canvas.width = w;
			this.overlay_canvas.height = h;
			jQuery(this.overlay_canvas).css({"width": w + "px",
											"height": h + "px"});
		}
		if (this.glwrap)
		{
			this.glwrap.setSize(Math.round(w * multiplier), Math.round(h * multiplier));
		}
		if (this.isDirectCanvas && this.ctx)
		{
			this.ctx.width = w;
			this.ctx.height = h;
		}
		if (this.ctx)
		{
			this.ctx["webkitImageSmoothingEnabled"] = this.linearSampling;
			this.ctx["mozImageSmoothingEnabled"] = this.linearSampling;
			this.ctx["msImageSmoothingEnabled"] = this.linearSampling;
			this.ctx["imageSmoothingEnabled"] = this.linearSampling;
		}
		this.tryLockOrientation();
		if (tryHideAddressBar)
		{
			window.setTimeout(function () {
				window.scrollTo(0, 1);
			}, 100);
		}
	};
	Runtime.prototype.tryLockOrientation = function ()
	{
		if (!this.autoLockOrientation || this.orientations === 0)
			return;
		var orientation = "portrait";
		if (this.orientations === 2)
			orientation = "landscape";
		if (screen["lockOrientation"])
			screen["lockOrientation"](orientation);
		else if (screen["webkitLockOrientation"])
			screen["webkitLockOrientation"](orientation);
		else if (screen["mozLockOrientation"])
			screen["mozLockOrientation"](orientation);
		else if (screen["msLockOrientation"])
			screen["msLockOrientation"](orientation);
	};
	Runtime.prototype.onContextLost = function ()
	{
		this.is_WebGL_context_lost = true;
		var i, len, t;
		for (i = 0, len = this.types_by_index.length; i < len; i++)
		{
			t = this.types_by_index[i];
			if (t.onLostWebGLContext)
				t.onLostWebGLContext();
		}
	};
	Runtime.prototype.onContextRestored = function ()
	{
		this.is_WebGL_context_lost = false;
		var i, len, t;
		for (i = 0, len = this.types_by_index.length; i < len; i++)
		{
			t = this.types_by_index[i];
			if (t.onRestoreWebGLContext)
				t.onRestoreWebGLContext();
		}
	};
	Runtime.prototype.positionOverlayCanvas = function()
	{
		if (this.isDomFree)
			return;
		var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || document["fullScreen"] || !!document["msFullscreenElement"] || this.isNodeFullscreen);
		var overlay_position = isfullscreen ? jQuery(this.canvas).offset() : jQuery(this.canvas).position();
		overlay_position.position = "absolute";
		jQuery(this.overlay_canvas).css(overlay_position);
	};
	var caf = window["cancelAnimationFrame"] ||
	  window["mozCancelAnimationFrame"]    ||
	  window["webkitCancelAnimationFrame"] ||
	  window["msCancelAnimationFrame"]     ||
	  window["oCancelAnimationFrame"];
	Runtime.prototype["setSuspended"] = function (s)
	{
		var i, len;
		if (s && !this.isSuspended && !this.blockSuspend)
		{
			cr.logexport("[Construct 2] Suspending");
			this.isSuspended = true;			// next tick will be last
			if (this.raf_id !== 0 && caf)		// note: CocoonJS does not implement cancelAnimationFrame
				caf(this.raf_id);
			if (this.timeout_id !== 0)
				clearTimeout(this.timeout_id);
			for (i = 0, len = this.suspend_events.length; i < len; i++)
				this.suspend_events[i](true);
		}
		else if (!s && this.isSuspended)
		{
			cr.logexport("[Construct 2] Resuming");
			this.isSuspended = false;
			this.last_tick_time = cr.performance_now();	// ensure first tick is a zero-dt one
			this.last_fps_time = cr.performance_now();	// reset FPS counter
			this.framecount = 0;
			this.logictime = 0;
			for (i = 0, len = this.suspend_events.length; i < len; i++)
				this.suspend_events[i](false);
			this.tick();						// kick off runtime again
		}
	};
	Runtime.prototype.addSuspendCallback = function (f)
	{
		this.suspend_events.push(f);
	};
	Runtime.prototype.load = function ()
	{
;
		var pm = cr.getProjectModel();
		this.name = pm[0];
		this.first_layout = pm[1];
		this.fullscreen_mode = pm[11];	// 0 = off, 1 = crop, 2 = scale inner, 3 = scale outer, 4 = letterbox scale, 5 = integer letterbox scale
		this.fullscreen_mode_set = pm[11];
		this.original_width = pm[9];
		this.original_height = pm[10];
		this.parallax_x_origin = this.original_width / 2;
		this.parallax_y_origin = this.original_height / 2;
		if (this.isDomFree && (pm[11] >= 4 || pm[11] === 0))
		{
			cr.logexport("[Construct 2] Letterbox scale fullscreen modes are not supported on this platform - falling back to 'Scale outer'");
			this.fullscreen_mode = 3;
			this.fullscreen_mode_set = 3;
		}
		this.uses_loader_layout = pm[17];
		this.loaderstyle = pm[18];
		if (this.loaderstyle === 0)
		{
			this.loaderlogo = new Image();
			this.loaderlogo.src = "loading-logo.png";
		}
		this.next_uid = pm[20];
		this.system = new cr.system_object(this);
		var i, len, j, lenj, k, lenk, idstr, m, b, t, f;
		var plugin, plugin_ctor;
		for (i = 0, len = pm[2].length; i < len; i++)
		{
			m = pm[2][i];
;
			cr.add_common_aces(m);
			plugin = new m[0](this);
			plugin.singleglobal = m[1];
			plugin.is_world = m[2];
			plugin.must_predraw = m[9];
			if (plugin.onCreate)
				plugin.onCreate();  // opportunity to override default ACEs
			cr.seal(plugin);
			this.plugins.push(plugin);
		}
		pm = cr.getProjectModel();
		for (i = 0, len = pm[3].length; i < len; i++)
		{
			m = pm[3][i];
			plugin_ctor = m[1];
;
			plugin = null;
			for (j = 0, lenj = this.plugins.length; j < lenj; j++)
			{
				if (this.plugins[j] instanceof plugin_ctor)
				{
					plugin = this.plugins[j];
					break;
				}
			}
;
;
			var type_inst = new plugin.Type(plugin);
;
			type_inst.name = m[0];
			type_inst.is_family = m[2];
			type_inst.instvar_sids = m[3].slice(0);
			type_inst.vars_count = m[3].length;
			type_inst.behs_count = m[4];
			type_inst.fx_count = m[5];
			type_inst.sid = m[11];
			if (type_inst.is_family)
			{
				type_inst.members = [];				// types in this family
				type_inst.family_index = this.family_count++;
				type_inst.families = null;
			}
			else
			{
				type_inst.members = null;
				type_inst.family_index = -1;
				type_inst.families = [];			// families this type belongs to
			}
			type_inst.family_var_map = null;
			type_inst.family_beh_map = null;
			type_inst.family_fx_map = null;
			type_inst.is_contained = false;
			type_inst.container = null;
			if (m[6])
			{
				type_inst.texture_file = m[6][0];
				type_inst.texture_filesize = m[6][1];
				type_inst.texture_pixelformat = m[6][2];
			}
			else
			{
				type_inst.texture_file = null;
				type_inst.texture_filesize = 0;
				type_inst.texture_pixelformat = 0;		// rgba8
			}
			if (m[7])
			{
				type_inst.animations = m[7];
			}
			else
			{
				type_inst.animations = null;
			}
			type_inst.index = i;                                // save index in to types array in type
			type_inst.instances = [];                           // all instances of this type
			type_inst.deadCache = [];							// destroyed instances to recycle next create
			type_inst.solstack = [new cr.selection(type_inst)]; // initialise SOL stack with one empty SOL
			type_inst.cur_sol = 0;
			type_inst.default_instance = null;
			type_inst.default_layerindex = 0;
			type_inst.stale_iids = true;
			type_inst.updateIIDs = cr.type_updateIIDs;
			type_inst.getFirstPicked = cr.type_getFirstPicked;
			type_inst.getPairedInstance = cr.type_getPairedInstance;
			type_inst.getCurrentSol = cr.type_getCurrentSol;
			type_inst.pushCleanSol = cr.type_pushCleanSol;
			type_inst.pushCopySol = cr.type_pushCopySol;
			type_inst.popSol = cr.type_popSol;
			type_inst.getBehaviorByName = cr.type_getBehaviorByName;
			type_inst.getBehaviorIndexByName = cr.type_getBehaviorIndexByName;
			type_inst.getEffectIndexByName = cr.type_getEffectIndexByName;
			type_inst.applySolToContainer = cr.type_applySolToContainer;
			type_inst.getInstanceByIID = cr.type_getInstanceByIID;
			type_inst.collision_grid = new cr.SparseGrid(this.original_width, this.original_height);
			type_inst.any_cell_changed = true;
			type_inst.any_instance_parallaxed = false;
			type_inst.extra = {};
			type_inst.toString = cr.type_toString;
			type_inst.behaviors = [];
			for (j = 0, lenj = m[8].length; j < lenj; j++)
			{
				b = m[8][j];
				var behavior_ctor = b[1];
				var behavior_plugin = null;
				for (k = 0, lenk = this.behaviors.length; k < lenk; k++)
				{
					if (this.behaviors[k] instanceof behavior_ctor)
					{
						behavior_plugin = this.behaviors[k];
						break;
					}
				}
				if (!behavior_plugin)
				{
					behavior_plugin = new behavior_ctor(this);
					behavior_plugin.my_types = [];						// types using this behavior
					behavior_plugin.my_instances = new cr.ObjectSet(); 	// instances of this behavior
					if (behavior_plugin.onCreate)
						behavior_plugin.onCreate();
					cr.seal(behavior_plugin);
					this.behaviors.push(behavior_plugin);
					if (cr.behaviors.solid && behavior_plugin instanceof cr.behaviors.solid)
						this.solidBehavior = behavior_plugin;
					if (cr.behaviors.jumpthru && behavior_plugin instanceof cr.behaviors.jumpthru)
						this.jumpthruBehavior = behavior_plugin;
				}
				if (behavior_plugin.my_types.indexOf(type_inst) === -1)
					behavior_plugin.my_types.push(type_inst);
				var behavior_type = new behavior_plugin.Type(behavior_plugin, type_inst);
				behavior_type.name = b[0];
				behavior_type.sid = b[2];
				behavior_type.onCreate();
				cr.seal(behavior_type);
				type_inst.behaviors.push(behavior_type);
			}
			type_inst.global = m[9];
			type_inst.isOnLoaderLayout = m[10];
			type_inst.effect_types = [];
			for (j = 0, lenj = m[12].length; j < lenj; j++)
			{
				type_inst.effect_types.push({
					id: m[12][j][0],
					name: m[12][j][1],
					shaderindex: -1,
					active: true,
					index: j
				});
			}
			type_inst.tile_poly_data = m[13];
			if (!this.uses_loader_layout || type_inst.is_family || type_inst.isOnLoaderLayout || !plugin.is_world)
			{
				type_inst.onCreate();
				cr.seal(type_inst);
			}
			if (type_inst.name)
				this.types[type_inst.name] = type_inst;
			this.types_by_index.push(type_inst);
			if (plugin.singleglobal)
			{
				var instance = new plugin.Instance(type_inst);
				instance.uid = this.next_uid++;
				instance.puid = this.next_puid++;
				instance.iid = 0;
				instance.get_iid = cr.inst_get_iid;
				instance.toString = cr.inst_toString;
				instance.properties = m[14];
				instance.onCreate();
				cr.seal(instance);
				type_inst.instances.push(instance);
				this.objectsByUid[instance.uid.toString()] = instance;
			}
		}
		for (i = 0, len = pm[4].length; i < len; i++)
		{
			var familydata = pm[4][i];
			var familytype = this.types_by_index[familydata[0]];
			var familymember;
			for (j = 1, lenj = familydata.length; j < lenj; j++)
			{
				familymember = this.types_by_index[familydata[j]];
				familymember.families.push(familytype);
				familytype.members.push(familymember);
			}
		}
		for (i = 0, len = pm[23].length; i < len; i++)
		{
			var containerdata = pm[23][i];
			var containertypes = [];
			for (j = 0, lenj = containerdata.length; j < lenj; j++)
				containertypes.push(this.types_by_index[containerdata[j]]);
			for (j = 0, lenj = containertypes.length; j < lenj; j++)
			{
				containertypes[j].is_contained = true;
				containertypes[j].container = containertypes;
			}
		}
		if (this.family_count > 0)
		{
			for (i = 0, len = this.types_by_index.length; i < len; i++)
			{
				t = this.types_by_index[i];
				if (t.is_family || !t.families.length)
					continue;
				t.family_var_map = new Array(this.family_count);
				t.family_beh_map = new Array(this.family_count);
				t.family_fx_map = new Array(this.family_count);
				var all_fx = [];
				var varsum = 0;
				var behsum = 0;
				var fxsum = 0;
				for (j = 0, lenj = t.families.length; j < lenj; j++)
				{
					f = t.families[j];
					t.family_var_map[f.family_index] = varsum;
					varsum += f.vars_count;
					t.family_beh_map[f.family_index] = behsum;
					behsum += f.behs_count;
					t.family_fx_map[f.family_index] = fxsum;
					fxsum += f.fx_count;
					for (k = 0, lenk = f.effect_types.length; k < lenk; k++)
						all_fx.push(cr.shallowCopy({}, f.effect_types[k]));
				}
				t.effect_types = all_fx.concat(t.effect_types);
				for (j = 0, lenj = t.effect_types.length; j < lenj; j++)
					t.effect_types[j].index = j;
			}
		}
		for (i = 0, len = pm[5].length; i < len; i++)
		{
			m = pm[5][i];
			var layout = new cr.layout(this, m);
			cr.seal(layout);
			this.layouts[layout.name] = layout;
			this.layouts_by_index.push(layout);
		}
		for (i = 0, len = pm[6].length; i < len; i++)
		{
			m = pm[6][i];
			var sheet = new cr.eventsheet(this, m);
			cr.seal(sheet);
			this.eventsheets[sheet.name] = sheet;
			this.eventsheets_by_index.push(sheet);
		}
		for (i = 0, len = this.eventsheets_by_index.length; i < len; i++)
			this.eventsheets_by_index[i].postInit();
		for (i = 0, len = this.triggers_to_postinit.length; i < len; i++)
			this.triggers_to_postinit[i].postInit();
		this.triggers_to_postinit.length = 0;
		this.files_subfolder = pm[7];
		this.pixel_rounding = pm[8];
		this.aspect_scale = 1.0;
		this.enableWebGL = pm[12];
		this.linearSampling = pm[13];
		this.alphaBackground = pm[14];
		this.versionstr = pm[15];
		this.useHighDpi = pm[16];
		this.orientations = pm[19];		// 0 = any, 1 = portrait, 2 = landscape
		this.autoLockOrientation = (this.orientations > 0);
		this.pauseOnBlur = pm[21];
		this.wantFullscreenScalingQuality = pm[22];		// false = low quality, true = high quality
		this.fullscreenScalingQuality = this.wantFullscreenScalingQuality;
		this.start_time = Date.now();
	};
	var anyImageHadError = false;
	Runtime.prototype.waitForImageLoad = function (img_)
	{
		img_.onerror = function ()
		{
			img_.c2error = true;
			anyImageHadError = true;
		};
		this.wait_for_textures.push(img_);
	};
	Runtime.prototype.findWaitingTexture = function (src_)
	{
		var i, len;
		for (i = 0, len = this.wait_for_textures.length; i < len; i++)
		{
			if (this.wait_for_textures[i].cr_src === src_)
				return this.wait_for_textures[i];
		}
		return null;
	};
	Runtime.prototype.areAllTexturesLoaded = function ()
	{
		var totalsize = 0;
		var completedsize = 0;
		var ret = true;
		var i, len, img;
		for (i = 0, len = this.wait_for_textures.length; i < len; i++)
		{
			img = this.wait_for_textures[i];
			var filesize = img.cr_filesize;
			if (!filesize || filesize <= 0)
				filesize = 50000;
			totalsize += filesize;
			if ((img.complete || img["loaded"]) && !img.c2error)
				completedsize += filesize;
			else
				ret = false;    // not all textures loaded
		}
		if (totalsize == 0)
			this.progress = 0;
		else
			this.progress = (completedsize / totalsize);
		return ret;
	};
	Runtime.prototype.go = function ()
	{
		if (!this.ctx && !this.glwrap)
			return;
		var ctx = this.ctx || this.overlay_ctx;
		if (this.overlay_canvas)
			this.positionOverlayCanvas();
		this.progress = 0;
		this.last_progress = -1;
		if (this.areAllTexturesLoaded())
			this.go_textures_done();
		else
		{
			var ms_elapsed = Date.now() - this.start_time;
			if (ctx)
			{
				var overlay_width = this.width;
				var overlay_height = this.height;
				var multiplier = this.devicePixelRatio;
				if (this.overlay_canvas)
				{
					overlay_width = this.cssWidth;
					overlay_height = this.cssHeight;
					multiplier = 1;
				}
				if (this.loaderstyle !== 3 && ms_elapsed >= 500 && this.last_progress != this.progress)
				{
					ctx.clearRect(0, 0, overlay_width, overlay_height);
					var mx = overlay_width / 2;
					var my = overlay_height / 2;
					var haslogo = (this.loaderstyle === 0 && this.loaderlogo.complete);
					var hlw = 40 * multiplier;
					var hlh = 0;
					var logowidth = 80 * multiplier;
					var logoheight;
					if (haslogo)
					{
						logowidth = this.loaderlogo.width * multiplier;
						logoheight = this.loaderlogo.height * multiplier;
						hlw = logowidth / 2;
						hlh = logoheight / 2;
						ctx.drawImage(this.loaderlogo, cr.floor(mx - hlw), cr.floor(my - hlh), logowidth, logoheight);
					}
					if (this.loaderstyle <= 1)
					{
						my += hlh + (haslogo ? 12 * multiplier : 0);
						mx -= hlw;
						mx = cr.floor(mx) + 0.5;
						my = cr.floor(my) + 0.5;
						ctx.fillStyle = anyImageHadError ? "red" : "DodgerBlue";
						ctx.fillRect(mx, my, Math.floor(logowidth * this.progress), 6 * multiplier);
						ctx.strokeStyle = "black";
						ctx.strokeRect(mx, my, logowidth, 6 * multiplier);
						ctx.strokeStyle = "white";
						ctx.strokeRect(mx - 1 * multiplier, my - 1 * multiplier, logowidth + 2 * multiplier, 8 * multiplier);
					}
					else if (this.loaderstyle === 2)
					{
						ctx.font = "12pt Arial";
						ctx.fillStyle = anyImageHadError ? "#f00" : "#999";
						ctx.textBaseLine = "middle";
						var percent_text = Math.round(this.progress * 100) + "%";
						var text_dim = ctx.measureText ? ctx.measureText(percent_text) : null;
						var text_width = text_dim ? text_dim.width : 0;
						ctx.fillText(percent_text, mx - (text_width / 2), my);
					}
				}
				this.last_progress = this.progress;
			}
			setTimeout((function (self) { return function () { self.go(); }; })(this), 100);
		}
	};
	Runtime.prototype.go_textures_done = function ()
	{
		if (this.overlay_canvas)
		{
			this.canvas.parentNode.removeChild(this.overlay_canvas);
			this.overlay_ctx = null;
			this.overlay_canvas = null;
		}
		this.start_time = Date.now();
		this.last_fps_time = cr.performance_now();       // for counting framerate
		var i, len, t;
		if (this.uses_loader_layout)
		{
			for (i = 0, len = this.types_by_index.length; i < len; i++)
			{
				t = this.types_by_index[i];
				if (!t.is_family && !t.isOnLoaderLayout && t.plugin.is_world)
				{
					t.onCreate();
					cr.seal(t);
				}
			}
		}
		else
			this.isloading = false;
		for (i = 0, len = this.layouts_by_index.length; i < len; i++)
		{
			this.layouts_by_index[i].createGlobalNonWorlds();
		}
		if (this.fullscreen_mode >= 2)
		{
			var orig_aspect = this.original_width / this.original_height;
			var cur_aspect = this.width / this.height;
			if ((this.fullscreen_mode !== 2 && cur_aspect > orig_aspect) || (this.fullscreen_mode === 2 && cur_aspect < orig_aspect))
				this.aspect_scale = this.height / this.original_height;
			else
				this.aspect_scale = this.width / this.original_width;
		}
		if (this.first_layout)
			this.layouts[this.first_layout].startRunning();
		else
			this.layouts_by_index[0].startRunning();
;
		if (!this.uses_loader_layout)
		{
			this.loadingprogress = 1;
			this.trigger(cr.system_object.prototype.cnds.OnLoadFinished, null);
		}
		if (navigator["splashscreen"] && navigator["splashscreen"]["hide"])
			navigator["splashscreen"]["hide"]();
		for (i = 0, len = this.types_by_index.length; i < len; i++)
		{
			t = this.types_by_index[i];
			if (t.onAppBegin)
				t.onAppBegin();
		}
		this.tick();
		if (this.isDirectCanvas)
			AppMobi["webview"]["execute"]("onGameReady();");
	};
	var raf = window["requestAnimationFrame"] ||
	  window["mozRequestAnimationFrame"]    ||
	  window["webkitRequestAnimationFrame"] ||
	  window["msRequestAnimationFrame"]     ||
	  window["oRequestAnimationFrame"];
	Runtime.prototype.tick = function ()
	{
		if (!this.running_layout)
			return;
		var logic_start = cr.performance_now();
		if (this.halfFramerateMode && this.ranLastRaf)
		{
			if (logic_start - this.lastRafTime < 29)
			{
				this.ranLastRaf = false;
				this.lastRafTime = logic_start;
				if (raf)
					this.raf_id = raf(this.tickFunc, this.canvas);
				else	// no idea if this works without raf/hi res timers but let's hope for the best
					this.timeout_id = setTimeout(this.tickFunc, this.isMobile ? 1 : 16);
				return;		// skipped this frame
			}
		}
		this.ranLastRaf = true;
		this.lastRafTime = logic_start;
		var fsmode = this.fullscreen_mode;
		var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || document["fullScreen"] || !!document["msFullscreenElement"]);
		if ((isfullscreen || this.isNodeFullscreen) && this.fullscreen_scaling > 0)
			fsmode = this.fullscreen_scaling;
		if (fsmode > 0 && (!this.isiPhone || window.self !== window.top))
		{
			var curwidth = window.innerWidth;
			var curheight = window.innerHeight;
			if (this.lastWindowWidth !== curwidth || this.lastWindowHeight !== curheight)
			{
					this["setSize"](curwidth, curheight);
			}
		}
		if (!this.isDomFree)
		{
			if (isfullscreen)
			{
				if (!this.firstInFullscreen)
				{
					this.fullscreenOldMarginCss = jQuery(this.canvas).css("margin") || "0";
					this.firstInFullscreen = true;
				}
				if (!this.isChrome && !this.isNodeWebkit)
				{
					jQuery(this.canvas).css({
						"margin-left": "" + Math.floor((screen.width - (this.width / this.devicePixelRatio)) / 2) + "px",
						"margin-top": "" + Math.floor((screen.height - (this.height / this.devicePixelRatio)) / 2) + "px"
					});
				}
			}
			else
			{
				if (this.firstInFullscreen)
				{
					if (!this.isChrome && !this.isNodeWebkit)
					{
						jQuery(this.canvas).css("margin", this.fullscreenOldMarginCss);
					}
					this.fullscreenOldMarginCss = "";
					this.firstInFullscreen = false;
					if (this.fullscreen_mode === 0)
					{
						this["setSize"](Math.round(this.oldWidth / this.devicePixelRatio), Math.round(this.oldHeight / this.devicePixelRatio), true);
					}
				}
				else
				{
					this.oldWidth = this.width;
					this.oldHeight = this.height;
				}
			}
		}
		if (this.isloading)
		{
			var done = this.areAllTexturesLoaded();		// updates this.progress
			this.loadingprogress = this.progress;
			if (done)
			{
				this.isloading = false;
				this.progress = 1;
				this.trigger(cr.system_object.prototype.cnds.OnLoadFinished, null);
			}
		}
		this.logic();
		if ((this.redraw || this.isCocoonJs) && !this.is_WebGL_context_lost && !this.suspendDrawing)
		{
			this.redraw = false;
			if (this.glwrap)
				this.drawGL();
			else
				this.draw();
			if (this.snapshotCanvas)
			{
				if (this.canvas && this.canvas.toDataURL)
				{
					this.snapshotData = this.canvas.toDataURL(this.snapshotCanvas[0], this.snapshotCanvas[1]);
					this.trigger(cr.system_object.prototype.cnds.OnCanvasSnapshot, null);
				}
				this.snapshotCanvas = null;
			}
		}
		if (!this.hit_breakpoint)
		{
			this.tickcount++;
			this.execcount++;
			this.framecount++;
		}
		this.logictime += cr.performance_now() - logic_start;
		if (this.isSuspended)
			return;
		if (raf)
			this.raf_id = raf(this.tickFunc, this.canvas);
		else
		{
			this.timeout_id = setTimeout(this.tickFunc, this.isMobile ? 1 : 16);
		}
	};
	Runtime.prototype.logic = function ()
	{
		var i, leni, j, lenj, k, lenk, type, inst, binst;
		var cur_time = cr.performance_now();
		if (cur_time - this.last_fps_time >= 1000)  // every 1 second
		{
			this.last_fps_time += 1000;
			this.fps = this.framecount;
			this.framecount = 0;
			this.cpuutilisation = this.logictime;
			this.logictime = 0;
		}
		if (this.measuring_dt)
		{
			if (this.last_tick_time !== 0)
			{
				var ms_diff = cur_time - this.last_tick_time;
				if (ms_diff === 0 && !this.isDebug)
				{
					this.zeroDtCount++;
					if (this.zeroDtCout >= 10)
						this.measuring_dt = false;
					this.dt1 = 1.0 / 60.0;            // 60fps assumed (0.01666...)
				}
				else
				{
					this.dt1 = ms_diff / 1000.0; // dt measured in seconds
					if (this.dt1 > 0.5)
						this.dt1 = 0;
					else if (this.dt1 > 0.1)
						this.dt1 = 0.1;
				}
			}
			this.last_tick_time = cur_time;
		}
        this.dt = this.dt1 * this.timescale;
        this.kahanTime.add(this.dt);
		var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || document["fullScreen"] || !!document["msFullscreenElement"] || this.isNodeFullscreen);
		if (this.fullscreen_mode >= 2 /* scale */ || (isfullscreen && this.fullscreen_scaling > 0))
		{
			var orig_aspect = this.original_width / this.original_height;
			var cur_aspect = this.width / this.height;
			var mode = this.fullscreen_mode;
			if (isfullscreen && this.fullscreen_scaling > 0)
				mode = this.fullscreen_scaling;
			if ((mode !== 2 && cur_aspect > orig_aspect) || (mode === 2 && cur_aspect < orig_aspect))
			{
				this.aspect_scale = this.height / this.original_height;
			}
			else
			{
				this.aspect_scale = this.width / this.original_width;
			}
			if (this.running_layout)
			{
				this.running_layout.scrollToX(this.running_layout.scrollX);
				this.running_layout.scrollToY(this.running_layout.scrollY);
			}
		}
		else
			this.aspect_scale = (this.isRetina ? this.devicePixelRatio : 1);
		this.ClearDeathRow();
		this.isInOnDestroy++;
		this.system.runWaits();		// prevent instance list changing
		this.isInOnDestroy--;
		this.ClearDeathRow();		// allow instance list changing
		this.isInOnDestroy++;
		for (i = 0, leni = this.types_by_index.length; i < leni; i++)
		{
			type = this.types_by_index[i];
			if (type.is_family || (!type.behaviors.length && !type.families.length))
				continue;
			for (j = 0, lenj = type.instances.length; j < lenj; j++)
			{
				inst = type.instances[j];
				for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++)
				{
					inst.behavior_insts[k].tick();
				}
			}
		}
		for (i = 0, leni = this.types_by_index.length; i < leni; i++)
		{
			type = this.types_by_index[i];
			if (type.is_family || (!type.behaviors.length && !type.families.length))
				continue;	// type doesn't have any behaviors
			for (j = 0, lenj = type.instances.length; j < lenj; j++)
			{
				inst = type.instances[j];
				for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++)
				{
					binst = inst.behavior_insts[k];
					if (binst.posttick)
						binst.posttick();
				}
			}
		}
        var tickarr = this.objects_to_tick.valuesRef();
        for (i = 0, leni = tickarr.length; i < leni; i++)
            tickarr[i].tick();
		this.isInOnDestroy--;		// end preventing instance lists from being changed
		this.handleSaveLoad();		// save/load now if queued
		i = 0;
		while (this.changelayout && i++ < 10)
		{
			this.doChangeLayout(this.changelayout);
		}
        for (i = 0, leni = this.eventsheets_by_index.length; i < leni; i++)
            this.eventsheets_by_index[i].hasRun = false;
		if (this.running_layout.event_sheet)
			this.running_layout.event_sheet.run();
		this.registered_collisions.length = 0;
		this.layout_first_tick = false;
		this.isInOnDestroy++;		// prevent instance lists from being changed
		for (i = 0, leni = this.types_by_index.length; i < leni; i++)
		{
			type = this.types_by_index[i];
			if (type.is_family || (!type.behaviors.length && !type.families.length))
				continue;	// type doesn't have any behaviors
			for (j = 0, lenj = type.instances.length; j < lenj; j++)
			{
				var inst = type.instances[j];
				for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++)
				{
					binst = inst.behavior_insts[k];
					if (binst.tick2)
						binst.tick2();
				}
			}
		}
        tickarr = this.objects_to_tick2.valuesRef();
        for (i = 0, leni = tickarr.length; i < leni; i++)
            tickarr[i].tick2();
		this.isInOnDestroy--;		// end preventing instance lists from being changed
	};
	Runtime.prototype.doChangeLayout = function (changeToLayout)
	{
;
		var prev_layout = this.running_layout;
		this.running_layout.stopRunning();
		var i, len, j, lenj, k, lenk, type, inst, binst;
		if (this.glwrap)
		{
			for (i = 0, len = this.types_by_index.length; i < len; i++)
			{
				type = this.types_by_index[i];
				if (type.is_family)
					continue;
				if (type.unloadTextures && (!type.global || type.instances.length === 0) && changeToLayout.initial_types.indexOf(type) === -1)
				{
					type.unloadTextures();
				}
			}
		}
		if (prev_layout == changeToLayout)
			this.system.waits.length = 0;
		changeToLayout.startRunning();
		for (i = 0, len = this.types_by_index.length; i < len; i++)
		{
			type = this.types_by_index[i];
			if (!type.global && !type.plugin.singleglobal)
				continue;
			for (j = 0, lenj = type.instances.length; j < lenj; j++)
			{
				inst = type.instances[j];
				if (inst.onLayoutChange)
					inst.onLayoutChange();
				if (inst.behavior_insts)
				{
					for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++)
					{
						binst = inst.behavior_insts[k];
						if (binst.onLayoutChange)
							binst.onLayoutChange();
					}
				}
			}
		}
		this.redraw = true;
		this.layout_first_tick = true;
		this.ClearDeathRow();
	};
    Runtime.prototype.tickMe = function (inst)
    {
        this.objects_to_tick.add(inst);
    };
	Runtime.prototype.untickMe = function (inst)
	{
		this.objects_to_tick.remove(inst);
	};
	Runtime.prototype.tick2Me = function (inst)
    {
        this.objects_to_tick2.add(inst);
    };
	Runtime.prototype.untick2Me = function (inst)
	{
		this.objects_to_tick2.remove(inst);
	};
    Runtime.prototype.getDt = function (inst)
    {
        if (!inst || inst.my_timescale === -1.0)
            return this.dt;
        return this.dt1 * inst.my_timescale;
    };
	Runtime.prototype.draw = function ()
	{
		this.running_layout.draw(this.ctx);
		if (this.isDirectCanvas)
			this.ctx["present"]();
	};
	Runtime.prototype.drawGL = function ()
	{
		this.running_layout.drawGL(this.glwrap);
		this.glwrap.present();
	};
	Runtime.prototype.addDestroyCallback = function (f)
	{
		if (f)
			this.destroycallbacks.push(f);
	};
	Runtime.prototype.removeDestroyCallback = function (f)
	{
		cr.arrayFindRemove(this.destroycallbacks, f);
	};
	Runtime.prototype.getObjectByUID = function (uid_)
	{
;
		var uidstr = uid_.toString();
		if (this.objectsByUid.hasOwnProperty(uidstr))
			return this.objectsByUid[uidstr];
		else
			return null;
	};
	Runtime.prototype.DestroyInstance = function (inst)
	{
		var i, len;
		if (!this.deathRow.contains(inst))
		{
			this.deathRow.add(inst);
			if (inst.is_contained)
			{
				for (i = 0, len = inst.siblings.length; i < len; i++)
				{
					this.DestroyInstance(inst.siblings[i]);
				}
			}
			if (this.isInClearDeathRow)
				this.deathRow.values_cache.push(inst);
			this.isInOnDestroy++;		// support recursion
			this.trigger(Object.getPrototypeOf(inst.type.plugin).cnds.OnDestroyed, inst);
			this.isInOnDestroy--;
		}
	};
	Runtime.prototype.ClearDeathRow = function ()
	{
		var inst, index, type, instances, binst;
		var i, j, k, leni, lenj, lenk;
		var w, f;
		this.isInClearDeathRow = true;
		for (i = 0, leni = this.createRow.length; i < leni; i++)
		{
			inst = this.createRow[i];
			type = inst.type;
			type.instances.push(inst);
			for (j = 0, lenj = type.families.length; j < lenj; j++)
			{
				type.families[j].instances.push(inst);
				type.families[j].stale_iids = true;
			}
		}
		this.createRow.length = 0;
		var arr = this.deathRow.valuesRef();	// get array of items from set
		for (i = 0; i < arr.length; i++)		// check array length every time in case it changes
		{
			inst = arr[i];
			type = inst.type;
			instances = type.instances;
			for (j = 0, lenj = this.destroycallbacks.length; j < lenj; j++)
				this.destroycallbacks[j](inst);
			cr.arrayFindRemove(instances, inst);
			if (instances.length === 0)
				type.any_instance_parallaxed = false;
			if (inst.collcells)
			{
				type.collision_grid.update(inst, inst.collcells, null);
			}
			if (inst.layer)
			{
				cr.arrayRemove(inst.layer.instances, inst.get_zindex());
				inst.layer.zindices_stale = true;
			}
			for (j = 0, lenj = type.families.length; j < lenj; j++)
			{
				cr.arrayFindRemove(type.families[j].instances, inst);
				type.families[j].stale_iids = true;
			}
			if (inst.behavior_insts)
			{
				for (j = 0, lenj = inst.behavior_insts.length; j < lenj; j++)
				{
					binst = inst.behavior_insts[j];
					if (binst.onDestroy)
						binst.onDestroy();
					binst.behavior.my_instances.remove(inst);
				}
			}
            this.objects_to_tick.remove(inst);
			this.objects_to_tick2.remove(inst);
			for (j = 0, lenj = this.system.waits.length; j < lenj; j++)
			{
				w = this.system.waits[j];
				if (w.sols.hasOwnProperty(type.index))
					cr.arrayFindRemove(w.sols[type.index].insts, inst);
				if (!type.is_family)
				{
					for (k = 0, lenk = type.families.length; k < lenk; k++)
					{
						f = type.families[k];
						if (w.sols.hasOwnProperty(f.index))
							cr.arrayFindRemove(w.sols[f.index].insts, inst);
					}
				}
			}
			if (inst.onDestroy)
				inst.onDestroy();
			if (this.objectsByUid.hasOwnProperty(inst.uid.toString()))
				delete this.objectsByUid[inst.uid.toString()];
			this.objectcount--;
			if (type.deadCache.length < 64)
				type.deadCache.push(inst);
			type.stale_iids = true;
		}
		if (!this.deathRow.isEmpty())
			this.redraw = true;
		this.deathRow.clear();
		this.isInClearDeathRow = false;
	};
	Runtime.prototype.createInstance = function (type, layer, sx, sy)
	{
		if (type.is_family)
		{
			var i = cr.floor(Math.random() * type.members.length);
			return this.createInstance(type.members[i], layer, sx, sy);
		}
		if (!type.default_instance)
		{
			return null;
		}
		return this.createInstanceFromInit(type.default_instance, layer, false, sx, sy, false);
	};
	var all_behaviors = [];
	Runtime.prototype.createInstanceFromInit = function (initial_inst, layer, is_startup_instance, sx, sy, skip_siblings)
	{
		var i, len, j, lenj, p, effect_fallback, x, y;
		if (!initial_inst)
			return null;
		var type = this.types_by_index[initial_inst[1]];
;
;
		var is_world = type.plugin.is_world;
;
		if (this.isloading && is_world && !type.isOnLoaderLayout)
			return null;
		if (is_world && !this.glwrap && initial_inst[0][11] === 11)
			return null;
		var original_layer = layer;
		if (!is_world)
			layer = null;
		var inst;
		if (type.deadCache.length)
		{
			inst = type.deadCache.pop();
			inst.recycled = true;
			type.plugin.Instance.call(inst, type);
		}
		else
		{
			inst = new type.plugin.Instance(type);
			inst.recycled = false;
		}
		if (is_startup_instance && !skip_siblings)
			inst.uid = initial_inst[2];
		else
			inst.uid = this.next_uid++;
		this.objectsByUid[inst.uid.toString()] = inst;
		inst.puid = this.next_puid++;
		inst.iid = type.instances.length;
		for (i = 0, len = this.createRow.length; i < len; ++i)
		{
			if (this.createRow[i].type === type)
				inst.iid++;
		}
		inst.get_iid = cr.inst_get_iid;
		var initial_vars = initial_inst[3];
		if (inst.recycled)
		{
			cr.wipe(inst.extra);
		}
		else
		{
			inst.extra = {};
			if (typeof cr_is_preview !== "undefined")
			{
				inst.instance_var_names = [];
				inst.instance_var_names.length = initial_vars.length;
				for (i = 0, len = initial_vars.length; i < len; i++)
					inst.instance_var_names[i] = initial_vars[i][1];
			}
			inst.instance_vars = [];
			inst.instance_vars.length = initial_vars.length;
		}
		for (i = 0, len = initial_vars.length; i < len; i++)
			inst.instance_vars[i] = initial_vars[i][0];
		if (is_world)
		{
			var wm = initial_inst[0];
;
			inst.x = cr.is_undefined(sx) ? wm[0] : sx;
			inst.y = cr.is_undefined(sy) ? wm[1] : sy;
			inst.z = wm[2];
			inst.width = wm[3];
			inst.height = wm[4];
			inst.depth = wm[5];
			inst.angle = wm[6];
			inst.opacity = wm[7];
			inst.hotspotX = wm[8];
			inst.hotspotY = wm[9];
			inst.blend_mode = wm[10];
			effect_fallback = wm[11];
			if (!this.glwrap && type.effect_types.length)	// no WebGL renderer and shaders used
				inst.blend_mode = effect_fallback;			// use fallback blend mode - destroy mode was handled above
			inst.compositeOp = cr.effectToCompositeOp(inst.blend_mode);
			if (this.gl)
				cr.setGLBlend(inst, inst.blend_mode, this.gl);
			if (inst.recycled)
			{
				for (i = 0, len = wm[12].length; i < len; i++)
				{
					for (j = 0, lenj = wm[12][i].length; j < lenj; j++)
						inst.effect_params[i][j] = wm[12][i][j];
				}
				inst.bbox.set(0, 0, 0, 0);
				inst.collcells.set(0, 0, -1, -1);
				inst.bquad.set_from_rect(inst.bbox);
				inst.bbox_changed_callbacks.length = 0;
			}
			else
			{
				inst.effect_params = wm[12].slice(0);
				for (i = 0, len = inst.effect_params.length; i < len; i++)
					inst.effect_params[i] = wm[12][i].slice(0);
				inst.active_effect_types = [];
				inst.active_effect_flags = [];
				inst.active_effect_flags.length = type.effect_types.length;
				inst.bbox = new cr.rect(0, 0, 0, 0);
				inst.collcells = new cr.rect(0, 0, -1, -1);
				inst.bquad = new cr.quad();
				inst.bbox_changed_callbacks = [];
				inst.set_bbox_changed = cr.set_bbox_changed;
				inst.add_bbox_changed_callback = cr.add_bbox_changed_callback;
				inst.contains_pt = cr.inst_contains_pt;
				inst.update_bbox = cr.update_bbox;
				inst.update_collision_cell = cr.update_collision_cell;
				inst.get_zindex = cr.inst_get_zindex;
			}
			inst.tilemap_exists = false;
			inst.tilemap_width = 0;
			inst.tilemap_height = 0;
			inst.tilemap_data = null;
			if (wm.length === 14)
			{
				inst.tilemap_exists = true;
				inst.tilemap_width = wm[13][0];
				inst.tilemap_height = wm[13][1];
				inst.tilemap_data = wm[13][2];
			}
			for (i = 0, len = type.effect_types.length; i < len; i++)
				inst.active_effect_flags[i] = true;
			inst.updateActiveEffects = cr.inst_updateActiveEffects;
			inst.updateActiveEffects();
			inst.uses_shaders = !!inst.active_effect_types.length;
			inst.bbox_changed = true;
			inst.cell_changed = true;
			type.any_cell_changed = true;
			inst.visible = true;
            inst.my_timescale = -1.0;
			inst.layer = layer;
			inst.zindex = layer.instances.length;	// will be placed at top of current layer
			if (typeof inst.collision_poly === "undefined")
				inst.collision_poly = null;
			inst.collisionsEnabled = true;
			this.redraw = true;
		}
		inst.toString = cr.inst_toString;
		var initial_props, binst;
		all_behaviors.length = 0;
		for (i = 0, len = type.families.length; i < len; i++)
		{
			all_behaviors.push.apply(all_behaviors, type.families[i].behaviors);
		}
		all_behaviors.push.apply(all_behaviors, type.behaviors);
		if (inst.recycled)
		{
			for (i = 0, len = all_behaviors.length; i < len; i++)
			{
				var btype = all_behaviors[i];
				binst = inst.behavior_insts[i];
				binst.recycled = true;
				btype.behavior.Instance.call(binst, btype, inst);
				initial_props = initial_inst[4][i];
				for (j = 0, lenj = initial_props.length; j < lenj; j++)
					binst.properties[j] = initial_props[j];
				binst.onCreate();
				btype.behavior.my_instances.add(inst);
			}
		}
		else
		{
			inst.behavior_insts = [];
			for (i = 0, len = all_behaviors.length; i < len; i++)
			{
				var btype = all_behaviors[i];
				var binst = new btype.behavior.Instance(btype, inst);
				binst.recycled = false;
				binst.properties = initial_inst[4][i].slice(0);
				binst.onCreate();
				cr.seal(binst);
				inst.behavior_insts.push(binst);
				btype.behavior.my_instances.add(inst);
			}
		}
		initial_props = initial_inst[5];
		if (inst.recycled)
		{
			for (i = 0, len = initial_props.length; i < len; i++)
				inst.properties[i] = initial_props[i];
		}
		else
			inst.properties = initial_props.slice(0);
		this.createRow.push(inst);
		if (layer)
		{
;
			layer.instances.push(inst);
			if (layer.parallaxX !== 1 || layer.parallaxY !== 1)
				type.any_instance_parallaxed = true;
		}
		this.objectcount++;
		if (type.is_contained)
		{
			inst.is_contained = true;
			if (inst.recycled)
				inst.siblings.length = 0;
			else
				inst.siblings = [];			// note: should not include self in siblings
			if (!is_startup_instance && !skip_siblings)	// layout links initial instances
			{
				for (i = 0, len = type.container.length; i < len; i++)
				{
					if (type.container[i] === type)
						continue;
					if (!type.container[i].default_instance)
					{
						return null;
					}
					inst.siblings.push(this.createInstanceFromInit(type.container[i].default_instance, original_layer, false, is_world ? inst.x : sx, is_world ? inst.y : sy, true));
				}
				for (i = 0, len = inst.siblings.length; i < len; i++)
				{
					inst.siblings[i].siblings.push(inst);
					for (j = 0; j < len; j++)
					{
						if (i !== j)
							inst.siblings[i].siblings.push(inst.siblings[j]);
					}
				}
			}
		}
		else
		{
			inst.is_contained = false;
			inst.siblings = null;
		}
		inst.onCreate();
		if (!inst.recycled)
			cr.seal(inst);
		for (i = 0, len = inst.behavior_insts.length; i < len; i++)
		{
			if (inst.behavior_insts[i].postCreate)
				inst.behavior_insts[i].postCreate();
		}
		return inst;
	};
	Runtime.prototype.getLayerByName = function (layer_name)
	{
		var i, len;
		for (i = 0, len = this.running_layout.layers.length; i < len; i++)
		{
			var layer = this.running_layout.layers[i];
			if (cr.equals_nocase(layer.name, layer_name))
				return layer;
		}
		return null;
	};
	Runtime.prototype.getLayerByNumber = function (index)
	{
		index = cr.floor(index);
		if (index < 0)
			index = 0;
		if (index >= this.running_layout.layers.length)
			index = this.running_layout.layers.length - 1;
		return this.running_layout.layers[index];
	};
	Runtime.prototype.getLayer = function (l)
	{
		if (cr.is_number(l))
			return this.getLayerByNumber(l);
		else
			return this.getLayerByName(l.toString());
	};
	Runtime.prototype.clearSol = function (solModifiers)
	{
		var i, len;
		for (i = 0, len = solModifiers.length; i < len; i++)
		{
			solModifiers[i].getCurrentSol().select_all = true;
		}
	};
	Runtime.prototype.pushCleanSol = function (solModifiers)
	{
		var i, len;
		for (i = 0, len = solModifiers.length; i < len; i++)
		{
			solModifiers[i].pushCleanSol();
		}
	};
	Runtime.prototype.pushCopySol = function (solModifiers)
	{
		var i, len;
		for (i = 0, len = solModifiers.length; i < len; i++)
		{
			solModifiers[i].pushCopySol();
		}
	};
	Runtime.prototype.popSol = function (solModifiers)
	{
		var i, len;
		for (i = 0, len = solModifiers.length; i < len; i++)
		{
			solModifiers[i].popSol();
		}
	};
	Runtime.prototype.updateAllCells = function (type)
	{
		if (!type.any_cell_changed)
			return;		// all instances must already be up-to-date
		var i, len, instances = type.instances;
		for (i = 0, len = instances.length; i < len; ++i)
		{
			instances[i].update_collision_cell();
		}
		var createRow = this.createRow;
		for (i = 0, len = createRow.length; i < len; ++i)
		{
			if (createRow[i].type === type)
				createRow[i].update_collision_cell();
		}
		type.any_cell_changed = false;
	};
	Runtime.prototype.getCollisionCandidates = function (layer, rtype, bbox, candidates)
	{
		var i, len, t;
		var is_parallaxed = (layer ? (layer.parallaxX !== 1 || layer.parallaxY !== 1) : false);
		if (rtype.is_family)
		{
			for (i = 0, len = rtype.members.length; i < len; ++i)
			{
				t = rtype.members[i];
				if (is_parallaxed || t.any_instance_parallaxed)
				{
					cr.appendArray(candidates, t.instances);
				}
				else
				{
					this.updateAllCells(t);
					t.collision_grid.queryRange(bbox, candidates);
				}
			}
		}
		else
		{
			if (is_parallaxed || rtype.any_instance_parallaxed)
			{
				cr.appendArray(candidates, rtype.instances);
			}
			else
			{
				this.updateAllCells(rtype);
				rtype.collision_grid.queryRange(bbox, candidates);
			}
		}
	};
	Runtime.prototype.getTypesCollisionCandidates = function (layer, types, bbox, candidates)
	{
		var i, len;
		for (i = 0, len = types.length; i < len; ++i)
		{
			this.getCollisionCandidates(layer, types[i], bbox, candidates);
		}
	};
	Runtime.prototype.getSolidCollisionCandidates = function (layer, bbox, candidates)
	{
		var solid = this.getSolidBehavior();
		if (!solid)
			return null;
		this.getTypesCollisionCandidates(layer, solid.my_types, bbox, candidates);
	};
	Runtime.prototype.getJumpthruCollisionCandidates = function (layer, bbox, candidates)
	{
		var jumpthru = this.getJumpthruBehavior();
		if (!jumpthru)
			return null;
		this.getTypesCollisionCandidates(layer, jumpthru.my_types, bbox, candidates);
	};
	Runtime.prototype.testAndSelectCanvasPointOverlap = function (type, ptx, pty, inverted)
	{
		var sol = type.getCurrentSol();
		var i, j, inst, len;
		var lx, ly;
		if (sol.select_all)
		{
			if (!inverted)
			{
				sol.select_all = false;
				sol.instances.length = 0;   // clear contents
			}
			for (i = 0, len = type.instances.length; i < len; i++)
			{
				inst = type.instances[i];
				inst.update_bbox();
				lx = inst.layer.canvasToLayer(ptx, pty, true);
				ly = inst.layer.canvasToLayer(ptx, pty, false);
				if (inst.contains_pt(lx, ly))
				{
					if (inverted)
						return false;
					else
						sol.instances.push(inst);
				}
			}
		}
		else
		{
			j = 0;
			for (i = 0, len = sol.instances.length; i < len; i++)
			{
				inst = sol.instances[i];
				inst.update_bbox();
				lx = inst.layer.canvasToLayer(ptx, pty, true);
				ly = inst.layer.canvasToLayer(ptx, pty, false);
				if (inst.contains_pt(lx, ly))
				{
					if (inverted)
						return false;
					else
					{
						sol.instances[j] = sol.instances[i];
						j++;
					}
				}
			}
			if (!inverted)
				sol.instances.length = j;
		}
		type.applySolToContainer();
		if (inverted)
			return true;		// did not find anything overlapping
		else
			return sol.hasObjects();
	};
	Runtime.prototype.testOverlap = function (a, b)
	{
		if (!a || !b || a === b || !a.collisionsEnabled || !b.collisionsEnabled)
			return false;
		a.update_bbox();
		b.update_bbox();
		var layera = a.layer;
		var layerb = b.layer;
		var different_layers = (layera !== layerb && (layera.parallaxX !== layerb.parallaxX || layerb.parallaxY !== layerb.parallaxY || layera.scale !== layerb.scale || layera.angle !== layerb.angle || layera.zoomRate !== layerb.zoomRate));
		var i, len, i2, i21, x, y, haspolya, haspolyb, polya, polyb;
		if (!different_layers)	// same layers: easy check
		{
			if (!a.bbox.intersects_rect(b.bbox))
				return false;
			if (!a.bquad.intersects_quad(b.bquad))
				return false;
			if (a.tilemap_exists && b.tilemap_exists)
				return false;
			if (a.tilemap_exists)
				return this.testTilemapOverlap(a, b);
			if (b.tilemap_exists)
				return this.testTilemapOverlap(b, a);
			haspolya = (a.collision_poly && !a.collision_poly.is_empty());
			haspolyb = (b.collision_poly && !b.collision_poly.is_empty());
			if (!haspolya && !haspolyb)
				return true;
			if (haspolya)
			{
				a.collision_poly.cache_poly(a.width, a.height, a.angle);
				polya = a.collision_poly;
			}
			else
			{
				this.temp_poly.set_from_quad(a.bquad, a.x, a.y, a.width, a.height);
				polya = this.temp_poly;
			}
			if (haspolyb)
			{
				b.collision_poly.cache_poly(b.width, b.height, b.angle);
				polyb = b.collision_poly;
			}
			else
			{
				this.temp_poly.set_from_quad(b.bquad, b.x, b.y, b.width, b.height);
				polyb = this.temp_poly;
			}
			return polya.intersects_poly(polyb, b.x - a.x, b.y - a.y);
		}
		else	// different layers: need to do full translated check
		{
			haspolya = (a.collision_poly && !a.collision_poly.is_empty());
			haspolyb = (b.collision_poly && !b.collision_poly.is_empty());
			if (haspolya)
			{
				a.collision_poly.cache_poly(a.width, a.height, a.angle);
				this.temp_poly.set_from_poly(a.collision_poly);
			}
			else
			{
				this.temp_poly.set_from_quad(a.bquad, a.x, a.y, a.width, a.height);
			}
			polya = this.temp_poly;
			if (haspolyb)
			{
				b.collision_poly.cache_poly(b.width, b.height, b.angle);
				this.temp_poly2.set_from_poly(b.collision_poly);
			}
			else
			{
				this.temp_poly2.set_from_quad(b.bquad, b.x, b.y, b.width, b.height);
			}
			polyb = this.temp_poly2;
			for (i = 0, len = polya.pts_count; i < len; i++)
			{
				i2 = i * 2;
				i21 = i2 + 1;
				x = polya.pts_cache[i2];
				y = polya.pts_cache[i21];
				polya.pts_cache[i2] = layera.layerToCanvas(x + a.x, y + a.y, true);
				polya.pts_cache[i21] = layera.layerToCanvas(x + a.x, y + a.y, false);
			}
			polya.update_bbox();
			for (i = 0, len = polyb.pts_count; i < len; i++)
			{
				i2 = i * 2;
				i21 = i2 + 1;
				x = polyb.pts_cache[i2];
				y = polyb.pts_cache[i21];
				polyb.pts_cache[i2] = layerb.layerToCanvas(x + b.x, y + b.y, true);
				polyb.pts_cache[i21] = layerb.layerToCanvas(x + b.x, y + b.y, false);
			}
			polyb.update_bbox();
			return polya.intersects_poly(polyb, 0, 0);
		}
	};
	var tmpQuad = new cr.quad();
	var tmpRect = new cr.rect(0, 0, 0, 0);
	var collrect_candidates = [];
	Runtime.prototype.testTilemapOverlap = function (tm, a)
	{
		var i, len, c, rc;
		var bbox = a.bbox;
		var tmx = tm.x;
		var tmy = tm.y;
		tm.getCollisionRectCandidates(bbox, collrect_candidates);
		var collrects = collrect_candidates;
		var haspolya = (a.collision_poly && !a.collision_poly.is_empty());
		for (i = 0, len = collrects.length; i < len; ++i)
		{
			c = collrects[i];
			rc = c.rc;
			if (bbox.intersects_rect_off(rc, tmx, tmy))
			{
				tmpQuad.set_from_rect(rc);
				tmpQuad.offset(tmx, tmy);
				if (tmpQuad.intersects_quad(a.bquad))
				{
					if (haspolya)
					{
						a.collision_poly.cache_poly(a.width, a.height, a.angle);
						if (c.poly)
						{
							if (c.poly.intersects_poly(a.collision_poly, a.x - (tmx + rc.left), a.y - (tmy + rc.top)))
							{
								collrect_candidates.length = 0;
								return true;
							}
						}
						else
						{
							this.temp_poly.set_from_quad(tmpQuad, 0, 0, rc.right - rc.left, rc.bottom - rc.top);
							if (this.temp_poly.intersects_poly(a.collision_poly, a.x, a.y))
							{
								collrect_candidates.length = 0;
								return true;
							}
						}
					}
					else
					{
						if (c.poly)
						{
							this.temp_poly.set_from_quad(a.bquad, 0, 0, a.width, a.height);
							if (c.poly.intersects_poly(this.temp_poly, -(tmx + rc.left), -(tmy + rc.top)))
							{
								collrect_candidates.length = 0;
								return true;
							}
						}
						else
						{
							collrect_candidates.length = 0;
							return true;
						}
					}
				}
			}
		}
		collrect_candidates.length = 0;
		return false;
	};
	Runtime.prototype.testRectOverlap = function (r, b)
	{
		if (!b || !b.collisionsEnabled)
			return false;
		b.update_bbox();
		var layerb = b.layer;
		var haspolyb, polyb;
		if (!b.bbox.intersects_rect(r))
			return false;
		if (b.tilemap_exists)
		{
			b.getCollisionRectCandidates(r, collrect_candidates);
			var collrects = collrect_candidates;
			var i, len, c, tilerc;
			var tmx = b.x;
			var tmy = b.y;
			for (i = 0, len = collrects.length; i < len; ++i)
			{
				c = collrects[i];
				tilerc = c.rc;
				if (r.intersects_rect_off(tilerc, tmx, tmy))
				{
					if (c.poly)
					{
						this.temp_poly.set_from_rect(r, 0, 0);
						if (c.poly.intersects_poly(this.temp_poly, -(tmx + tilerc.left), -(tmy + tilerc.top)))
						{
							collrect_candidates.length = 0;
							return true;
						}
					}
					else
					{
						collrect_candidates.length = 0;
						return true;
					}
				}
			}
			collrect_candidates.length = 0;
			return false;
		}
		else
		{
			tmpQuad.set_from_rect(r);
			if (!b.bquad.intersects_quad(tmpQuad))
				return false;
			haspolyb = (b.collision_poly && !b.collision_poly.is_empty());
			if (!haspolyb)
				return true;
			b.collision_poly.cache_poly(b.width, b.height, b.angle);
			tmpQuad.offset(-r.left, -r.top);
			this.temp_poly.set_from_quad(tmpQuad, 0, 0, 1, 1);
			return b.collision_poly.intersects_poly(this.temp_poly, r.left - b.x, r.top - b.y);
		}
	};
	Runtime.prototype.testSegmentOverlap = function (x1, y1, x2, y2, b)
	{
		if (!b || !b.collisionsEnabled)
			return false;
		b.update_bbox();
		var layerb = b.layer;
		var haspolyb, polyb;
		tmpRect.set(cr.min(x1, x2), cr.min(y1, y2), cr.max(x1, x2), cr.max(y1, y2));
		if (!b.bbox.intersects_rect(tmpRect))
			return false;
		if (b.tilemap_exists)
		{
			b.getCollisionRectCandidates(tmpRect, collrect_candidates);
			var collrects = collrect_candidates;
			var i, len, c, tilerc;
			var tmx = b.x;
			var tmy = b.y;
			for (i = 0, len = collrects.length; i < len; ++i)
			{
				c = collrects[i];
				tilerc = c.rc;
				if (tmpRect.intersects_rect_off(tilerc, tmx, tmy))
				{
					tmpQuad.set_from_rect(tilerc);
					tmpQuad.offset(tmx, tmy);
					if (tmpQuad.intersects_segment(x1, y1, x2, y2))
					{
						if (c.poly)
						{
							if (c.poly.intersects_segment(tmx + tilerc.left, tmy + tilerc.top, x1, y1, x2, y2))
							{
								collrect_candidates.length = 0;
								return true;
							}
						}
						else
						{
							collrect_candidates.length = 0;
							return true;
						}
					}
				}
			}
			collrect_candidates.length = 0;
			return false;
		}
		else
		{
			if (!b.bquad.intersects_segment(x1, y1, x2, y2))
				return false;
			haspolyb = (b.collision_poly && !b.collision_poly.is_empty());
			if (!haspolyb)
				return true;
			b.collision_poly.cache_poly(b.width, b.height, b.angle);
			return b.collision_poly.intersects_segment(b.x, b.y, x1, y1, x2, y2);
		}
	};
	Runtime.prototype.typeHasBehavior = function (t, b)
	{
		if (!b)
			return false;
		var i, len, j, lenj, f;
		for (i = 0, len = t.behaviors.length; i < len; i++)
		{
			if (t.behaviors[i].behavior instanceof b)
				return true;
		}
		if (!t.is_family)
		{
			for (i = 0, len = t.families.length; i < len; i++)
			{
				f = t.families[i];
				for (j = 0, lenj = f.behaviors.length; j < lenj; j++)
				{
					if (f.behaviors[j].behavior instanceof b)
						return true;
				}
			}
		}
		return false;
	};
	Runtime.prototype.typeHasNoSaveBehavior = function (t)
	{
		return this.typeHasBehavior(t, cr.behaviors.NoSave);
	};
	Runtime.prototype.typeHasPersistBehavior = function (t)
	{
		return this.typeHasBehavior(t, cr.behaviors.Persist);
	};
	Runtime.prototype.getSolidBehavior = function ()
	{
		return this.solidBehavior;
	};
	Runtime.prototype.getJumpthruBehavior = function ()
	{
		return this.jumpthruBehavior;
	};
	var candidates = [];
	Runtime.prototype.testOverlapSolid = function (inst)
	{
		var i, len, s;
		inst.update_bbox();
		this.getSolidCollisionCandidates(inst.layer, inst.bbox, candidates);
		for (i = 0, len = candidates.length; i < len; ++i)
		{
			s = candidates[i];
			if (!s.extra.solidEnabled)
				continue;
			if (this.testOverlap(inst, s))
			{
				candidates.length = 0;
				return s;
			}
		}
		candidates.length = 0;
		return null;
	};
	Runtime.prototype.testRectOverlapSolid = function (r)
	{
		var i, len, s;
		this.getSolidCollisionCandidates(null, r, candidates);
		for (i = 0, len = candidates.length; i < len; ++i)
		{
			s = candidates[i];
			if (!s.extra.solidEnabled)
				continue;
			if (this.testRectOverlap(r, s))
			{
				candidates.length = 0;
				return s;
			}
		}
		candidates.length = 0;
		return null;
	};
	var jumpthru_array_ret = [];
	Runtime.prototype.testOverlapJumpThru = function (inst, all)
	{
		var ret = null;
		if (all)
		{
			ret = jumpthru_array_ret;
			ret.length = 0;
		}
		inst.update_bbox();
		this.getJumpthruCollisionCandidates(inst.layer, inst.bbox, candidates);
		var i, len, j;
		for (i = 0, len = candidates.length; i < len; ++i)
		{
			j = candidates[i];
			if (!j.extra.jumpthruEnabled)
				continue;
			if (this.testOverlap(inst, j))
			{
				if (all)
					ret.push(j);
				else
				{
					candidates.length = 0;
					return j;
				}
			}
		}
		candidates.length = 0;
		return ret;
	};
	Runtime.prototype.pushOutSolid = function (inst, xdir, ydir, dist, include_jumpthrus, specific_jumpthru)
	{
		var push_dist = dist || 50;
		var oldx = inst.x
		var oldy = inst.y;
		var i;
		var last_overlapped = null, secondlast_overlapped = null;
		for (i = 0; i < push_dist; i++)
		{
			inst.x = (oldx + (xdir * i));
			inst.y = (oldy + (ydir * i));
			inst.set_bbox_changed();
			if (!this.testOverlap(inst, last_overlapped))
			{
				last_overlapped = this.testOverlapSolid(inst);
				if (last_overlapped)
					secondlast_overlapped = last_overlapped;
				if (!last_overlapped)
				{
					if (include_jumpthrus)
					{
						if (specific_jumpthru)
							last_overlapped = (this.testOverlap(inst, specific_jumpthru) ? specific_jumpthru : null);
						else
							last_overlapped = this.testOverlapJumpThru(inst);
						if (last_overlapped)
							secondlast_overlapped = last_overlapped;
					}
					if (!last_overlapped)
					{
						if (secondlast_overlapped)
							this.pushInFractional(inst, xdir, ydir, secondlast_overlapped, 16);
						return true;
					}
				}
			}
		}
		inst.x = oldx;
		inst.y = oldy;
		inst.set_bbox_changed();
		return false;
	};
	Runtime.prototype.pushOut = function (inst, xdir, ydir, dist, otherinst)
	{
		var push_dist = dist || 50;
		var oldx = inst.x
		var oldy = inst.y;
		var i;
		for (i = 0; i < push_dist; i++)
		{
			inst.x = (oldx + (xdir * i));
			inst.y = (oldy + (ydir * i));
			inst.set_bbox_changed();
			if (!this.testOverlap(inst, otherinst))
				return true;
		}
		inst.x = oldx;
		inst.y = oldy;
		inst.set_bbox_changed();
		return false;
	};
	Runtime.prototype.pushInFractional = function (inst, xdir, ydir, obj, limit)
	{
		var divisor = 2;
		var frac;
		var forward = false;
		var overlapping = false;
		var bestx = inst.x;
		var besty = inst.y;
		while (divisor <= limit)
		{
			frac = 1 / divisor;
			divisor *= 2;
			inst.x += xdir * frac * (forward ? 1 : -1);
			inst.y += ydir * frac * (forward ? 1 : -1);
			inst.set_bbox_changed();
			if (this.testOverlap(inst, obj))
			{
				forward = true;
				overlapping = true;
			}
			else
			{
				forward = false;
				overlapping = false;
				bestx = inst.x;
				besty = inst.y;
			}
		}
		if (overlapping)
		{
			inst.x = bestx;
			inst.y = besty;
			inst.set_bbox_changed();
		}
	};
	Runtime.prototype.pushOutSolidNearest = function (inst, max_dist_)
	{
		var max_dist = (cr.is_undefined(max_dist_) ? 100 : max_dist_);
		var dist = 0;
		var oldx = inst.x
		var oldy = inst.y;
		var dir = 0;
		var dx = 0, dy = 0;
		var last_overlapped = this.testOverlapSolid(inst);
		if (!last_overlapped)
			return true;		// already clear of solids
		while (dist <= max_dist)
		{
			switch (dir) {
			case 0:		dx = 0; dy = -1; dist++; break;
			case 1:		dx = 1; dy = -1; break;
			case 2:		dx = 1; dy = 0; break;
			case 3:		dx = 1; dy = 1; break;
			case 4:		dx = 0; dy = 1; break;
			case 5:		dx = -1; dy = 1; break;
			case 6:		dx = -1; dy = 0; break;
			case 7:		dx = -1; dy = -1; break;
			}
			dir = (dir + 1) % 8;
			inst.x = cr.floor(oldx + (dx * dist));
			inst.y = cr.floor(oldy + (dy * dist));
			inst.set_bbox_changed();
			if (!this.testOverlap(inst, last_overlapped))
			{
				last_overlapped = this.testOverlapSolid(inst);
				if (!last_overlapped)
					return true;
			}
		}
		inst.x = oldx;
		inst.y = oldy;
		inst.set_bbox_changed();
		return false;
	};
	Runtime.prototype.registerCollision = function (a, b)
	{
		if (!a.collisionsEnabled || !b.collisionsEnabled)
			return;
		this.registered_collisions.push([a, b]);
	};
	Runtime.prototype.checkRegisteredCollision = function (a, b)
	{
		var i, len, x;
		for (i = 0, len = this.registered_collisions.length; i < len; i++)
		{
			x = this.registered_collisions[i];
			if ((x[0] == a && x[1] == b) || (x[0] == b && x[1] == a))
				return true;
		}
		return false;
	};
	Runtime.prototype.calculateSolidBounceAngle = function(inst, startx, starty, obj)
	{
		var objx = inst.x;
		var objy = inst.y;
		var radius = cr.max(10, cr.distanceTo(startx, starty, objx, objy));
		var startangle = cr.angleTo(startx, starty, objx, objy);
		var firstsolid = obj || this.testOverlapSolid(inst);
		if (!firstsolid)
			return cr.clamp_angle(startangle + cr.PI);
		var cursolid = firstsolid;
		var i, curangle, anticlockwise_free_angle, clockwise_free_angle;
		var increment = cr.to_radians(5);	// 5 degree increments
		for (i = 1; i < 36; i++)
		{
			curangle = startangle - i * increment;
			inst.x = startx + Math.cos(curangle) * radius;
			inst.y = starty + Math.sin(curangle) * radius;
			inst.set_bbox_changed();
			if (!this.testOverlap(inst, cursolid))
			{
				cursolid = obj ? null : this.testOverlapSolid(inst);
				if (!cursolid)
				{
					anticlockwise_free_angle = curangle;
					break;
				}
			}
		}
		if (i === 36)
			anticlockwise_free_angle = cr.clamp_angle(startangle + cr.PI);
		var cursolid = firstsolid;
		for (i = 1; i < 36; i++)
		{
			curangle = startangle + i * increment;
			inst.x = startx + Math.cos(curangle) * radius;
			inst.y = starty + Math.sin(curangle) * radius;
			inst.set_bbox_changed();
			if (!this.testOverlap(inst, cursolid))
			{
				cursolid = obj ? null : this.testOverlapSolid(inst);
				if (!cursolid)
				{
					clockwise_free_angle = curangle;
					break;
				}
			}
		}
		if (i === 36)
			clockwise_free_angle = cr.clamp_angle(startangle + cr.PI);
		inst.x = objx;
		inst.y = objy;
		inst.set_bbox_changed();
		if (clockwise_free_angle === anticlockwise_free_angle)
			return clockwise_free_angle;
		var half_diff = cr.angleDiff(clockwise_free_angle, anticlockwise_free_angle) / 2;
		var normal;
		if (cr.angleClockwise(clockwise_free_angle, anticlockwise_free_angle))
		{
			normal = cr.clamp_angle(anticlockwise_free_angle + half_diff + cr.PI);
		}
		else
		{
			normal = cr.clamp_angle(clockwise_free_angle + half_diff);
		}
;
		var vx = Math.cos(startangle);
		var vy = Math.sin(startangle);
		var nx = Math.cos(normal);
		var ny = Math.sin(normal);
		var v_dot_n = vx * nx + vy * ny;
		var rx = vx - 2 * v_dot_n * nx;
		var ry = vy - 2 * v_dot_n * ny;
		return cr.angleTo(0, 0, rx, ry);
	};
	var triggerSheetStack = [];
	var triggerSheetIndex = -1;
	Runtime.prototype.trigger = function (method, inst, value /* for fast triggers */)
	{
;
		if (!this.running_layout)
			return false;
		var sheet = this.running_layout.event_sheet;
		if (!sheet)
			return false;     // no event sheet active; nothing to trigger
		triggerSheetIndex++;
		if (triggerSheetIndex === triggerSheetStack.length)
			triggerSheetStack.push(new cr.ObjectSet());
		else
			triggerSheetStack[triggerSheetIndex].clear();
        var ret = this.triggerOnSheet(method, inst, sheet, value);
		triggerSheetIndex--;
		return ret;
    };
    Runtime.prototype.triggerOnSheet = function (method, inst, sheet, value)
    {
		var alreadyTriggeredSheets = triggerSheetStack[triggerSheetIndex];
        if (alreadyTriggeredSheets.contains(sheet))
            return false;
        alreadyTriggeredSheets.add(sheet);
        var includes = sheet.includes.valuesRef();
        var ret = false;
		var i, leni, r;
        for (i = 0, leni = includes.length; i < leni; i++)
        {
			if (includes[i].isActive())
			{
				r = this.triggerOnSheet(method, inst, includes[i].include_sheet, value);
				ret = ret || r;
			}
        }
		if (!inst)
		{
			r = this.triggerOnSheetForTypeName(method, inst, "system", sheet, value);
			ret = ret || r;
		}
		else
		{
			r = this.triggerOnSheetForTypeName(method, inst, inst.type.name, sheet, value);
			ret = ret || r;
			for (i = 0, leni = inst.type.families.length; i < leni; i++)
			{
				r = this.triggerOnSheetForTypeName(method, inst, inst.type.families[i].name, sheet, value);
				ret = ret || r;
			}
		}
		return ret;             // true if anything got triggered
	};
	Runtime.prototype.triggerOnSheetForTypeName = function (method, inst, type_name, sheet, value)
	{
		var i, leni;
		var ret = false, ret2 = false;
		var trig, index;
		var fasttrigger = (typeof value !== "undefined");
		var triggers = (fasttrigger ? sheet.fasttriggers : sheet.triggers);
		var obj_entry = triggers[type_name];
		if (!obj_entry)
			return ret;
		var triggers_list = null;
		for (i = 0, leni = obj_entry.length; i < leni; i++)
		{
			if (obj_entry[i].method == method)
			{
				triggers_list = obj_entry[i].evs;
				break;
			}
		}
		if (!triggers_list)
			return ret;
		var triggers_to_fire;
		if (fasttrigger)
		{
			triggers_to_fire = triggers_list[value];
		}
		else
		{
			triggers_to_fire = triggers_list;
		}
		if (!triggers_to_fire)
			return null;
		for (i = 0, leni = triggers_to_fire.length; i < leni; i++)
		{
			trig = triggers_to_fire[i][0];
			index = triggers_to_fire[i][1];
			ret2 = this.executeSingleTrigger(inst, type_name, trig, index);
			ret = ret || ret2;
		}
		return ret;
	};
	Runtime.prototype.executeSingleTrigger = function (inst, type_name, trig, index)
	{
		var i, leni;
		var ret = false;
		this.trigger_depth++;
		var current_event = this.getCurrentEventStack().current_event;
		if (current_event)
			this.pushCleanSol(current_event.solModifiersIncludingParents);
		var isrecursive = (this.trigger_depth > 1);		// calling trigger from inside another trigger
		this.pushCleanSol(trig.solModifiersIncludingParents);
		if (isrecursive)
			this.pushLocalVarStack();
		var event_stack = this.pushEventStack(trig);
		event_stack.current_event = trig;
		if (inst)
		{
			var sol = this.types[type_name].getCurrentSol();
			sol.select_all = false;
			sol.instances.length = 1;
			sol.instances[0] = inst;
			this.types[type_name].applySolToContainer();
		}
		var ok_to_run = true;
		if (trig.parent)
		{
			var temp_parents_arr = event_stack.temp_parents_arr;
			var cur_parent = trig.parent;
			while (cur_parent)
			{
				temp_parents_arr.push(cur_parent);
				cur_parent = cur_parent.parent;
			}
			temp_parents_arr.reverse();
			for (i = 0, leni = temp_parents_arr.length; i < leni; i++)
			{
				if (!temp_parents_arr[i].run_pretrigger())   // parent event failed
				{
					ok_to_run = false;
					break;
				}
			}
		}
		if (ok_to_run)
		{
			this.execcount++;
			if (trig.orblock)
				trig.run_orblocktrigger(index);
			else
				trig.run();
			ret = ret || event_stack.last_event_true;
		}
		this.popEventStack();
		if (isrecursive)
			this.popLocalVarStack();
		this.popSol(trig.solModifiersIncludingParents);
		if (current_event)
			this.popSol(current_event.solModifiersIncludingParents);
		if (this.isInOnDestroy === 0 && triggerSheetIndex === 0 && !this.isRunningEvents && (!this.deathRow.isEmpty() || this.createRow.length))
		{
			this.ClearDeathRow();
		}
		this.trigger_depth--;
		return ret;
	};
	Runtime.prototype.getCurrentCondition = function ()
	{
		var evinfo = this.getCurrentEventStack();
		return evinfo.current_event.conditions[evinfo.cndindex];
	};
	Runtime.prototype.getCurrentAction = function ()
	{
		var evinfo = this.getCurrentEventStack();
		return evinfo.current_event.actions[evinfo.actindex];
	};
	Runtime.prototype.pushLocalVarStack = function ()
	{
		this.localvar_stack_index++;
		if (this.localvar_stack_index >= this.localvar_stack.length)
			this.localvar_stack.push([]);
	};
	Runtime.prototype.popLocalVarStack = function ()
	{
;
		this.localvar_stack_index--;
	};
	Runtime.prototype.getCurrentLocalVarStack = function ()
	{
		return this.localvar_stack[this.localvar_stack_index];
	};
	Runtime.prototype.pushEventStack = function (cur_event)
	{
		this.event_stack_index++;
		if (this.event_stack_index >= this.event_stack.length)
			this.event_stack.push(new cr.eventStackFrame());
		var ret = this.getCurrentEventStack();
		ret.reset(cur_event);
		return ret;
	};
	Runtime.prototype.popEventStack = function ()
	{
;
		this.event_stack_index--;
	};
	Runtime.prototype.getCurrentEventStack = function ()
	{
		return this.event_stack[this.event_stack_index];
	};
	Runtime.prototype.pushLoopStack = function (name_)
	{
		this.loop_stack_index++;
		if (this.loop_stack_index >= this.loop_stack.length)
		{
			this.loop_stack.push(cr.seal({ name: name_, index: 0, stopped: false }));
		}
		var ret = this.getCurrentLoop();
		ret.name = name_;
		ret.index = 0;
		ret.stopped = false;
		return ret;
	};
	Runtime.prototype.popLoopStack = function ()
	{
;
		this.loop_stack_index--;
	};
	Runtime.prototype.getCurrentLoop = function ()
	{
		return this.loop_stack[this.loop_stack_index];
	};
	Runtime.prototype.getEventVariableByName = function (name, scope)
	{
		var i, leni, j, lenj, sheet, e;
		while (scope)
		{
			for (i = 0, leni = scope.subevents.length; i < leni; i++)
			{
				e = scope.subevents[i];
				if (e instanceof cr.eventvariable && cr.equals_nocase(name, e.name))
					return e;
			}
			scope = scope.parent;
		}
		for (i = 0, leni = this.eventsheets_by_index.length; i < leni; i++)
		{
			sheet = this.eventsheets_by_index[i];
			for (j = 0, lenj = sheet.events.length; j < lenj; j++)
			{
				e = sheet.events[j];
				if (e instanceof cr.eventvariable && cr.equals_nocase(name, e.name))
					return e;
			}
		}
		return null;
	};
	Runtime.prototype.getLayoutBySid = function (sid_)
	{
		var i, len;
		for (i = 0, len = this.layouts_by_index.length; i < len; i++)
		{
			if (this.layouts_by_index[i].sid === sid_)
				return this.layouts_by_index[i];
		}
		return null;
	};
	Runtime.prototype.getObjectTypeBySid = function (sid_)
	{
		var i, len;
		for (i = 0, len = this.types_by_index.length; i < len; i++)
		{
			if (this.types_by_index[i].sid === sid_)
				return this.types_by_index[i];
		}
		return null;
	};
	Runtime.prototype.getGroupBySid = function (sid_)
	{
		var i, len;
		for (i = 0, len = this.allGroups.length; i < len; i++)
		{
			if (this.allGroups[i].sid === sid_)
				return this.allGroups[i];
		}
		return null;
	};
	function makeSaveDb(e)
	{
		var db = e.target.result;
		db.createObjectStore("saves", { keyPath: "slot" });
	};
	function IndexedDB_WriteSlot(slot_, data_, oncomplete_, onerror_)
	{
		var request = indexedDB.open("_C2SaveStates");
		request.onupgradeneeded = makeSaveDb;
		request.onerror = onerror_;
		request.onsuccess = function (e)
		{
			var db = e.target.result;
			db.onerror = onerror_;
			var transaction = db.transaction(["saves"], "readwrite");
			var objectStore = transaction.objectStore("saves");
			var putReq = objectStore.put({"slot": slot_, "data": data_ });
			putReq.onsuccess = oncomplete_;
		};
	};
	function IndexedDB_ReadSlot(slot_, oncomplete_, onerror_)
	{
		var request = indexedDB.open("_C2SaveStates");
		request.onupgradeneeded = makeSaveDb;
		request.onerror = onerror_;
		request.onsuccess = function (e)
		{
			var db = e.target.result;
			db.onerror = onerror_;
			var transaction = db.transaction(["saves"]);
			var objectStore = transaction.objectStore("saves");
			var readReq = objectStore.get(slot_);
			readReq.onsuccess = function (e)
			{
				if (readReq.result)
					oncomplete_(readReq.result["data"]);
				else
					oncomplete_(null);
			};
		};
	};
	Runtime.prototype.signalContinuousPreview = function ()
	{
		this.signalledContinuousPreview = true;
	};
	function doContinuousPreviewReload()
	{
		cr.logexport("Reloading for continuous preview");
		if (!!window["c2cocoonjs"])
		{
			CocoonJS["App"]["reload"]();
		}
		else
		{
			if (window.location.search.indexOf("continuous") > -1)
				window.location.reload(true);
			else
				window.location = window.location + "?continuous";
		}
	};
	Runtime.prototype.handleSaveLoad = function ()
	{
		var self = this;
		var savingToSlot = this.saveToSlot;
		var savingJson = this.lastSaveJson;
		var loadingFromSlot = this.loadFromSlot;
		var continuous = false;
		if (this.signalledContinuousPreview)
		{
			continuous = true;
			savingToSlot = "__c2_continuouspreview";
			this.signalledContinuousPreview = false;
		}
		if (savingToSlot.length)
		{
			this.ClearDeathRow();
			savingJson = this.saveToJSONString();
			if (window.indexedDB && !this.isCocoonJs)
			{
				IndexedDB_WriteSlot(savingToSlot, savingJson, function ()
				{
					cr.logexport("Saved state to IndexedDB storage (" + savingJson.length + " bytes)");
					self.lastSaveJson = savingJson;
					self.trigger(cr.system_object.prototype.cnds.OnSaveComplete, null);
					self.lastSaveJson = "";
					if (continuous)
						doContinuousPreviewReload();
				}, function (e)
				{
					try {
						localStorage.setItem("__c2save_" + savingToSlot, savingJson);
						cr.logexport("Saved state to WebStorage (" + savingJson.length + " bytes)");
						self.lastSaveJson = savingJson;
						self.trigger(cr.system_object.prototype.cnds.OnSaveComplete, null);
						self.lastSaveJson = "";
						if (continuous)
							doContinuousPreviewReload();
					}
					catch (f)
					{
						cr.logexport("Failed to save game state: " + e + "; " + f);
					}
				});
			}
			else
			{
				try {
					localStorage.setItem("__c2save_" + savingToSlot, savingJson);
					cr.logexport("Saved state to WebStorage (" + savingJson.length + " bytes)");
					self.lastSaveJson = savingJson;
					this.trigger(cr.system_object.prototype.cnds.OnSaveComplete, null);
					self.lastSaveJson = "";
					if (continuous)
						doContinuousPreviewReload();
				}
				catch (e)
				{
					cr.logexport("Error saving to WebStorage: " + e);
				}
			}
			this.saveToSlot = "";
			this.loadFromSlot = "";
			this.loadFromJson = "";
		}
		if (loadingFromSlot.length)
		{
			if (window.indexedDB && !this.isCocoonJs)
			{
				IndexedDB_ReadSlot(loadingFromSlot, function (result_)
				{
					if (result_)
					{
						self.loadFromJson = result_;
						cr.logexport("Loaded state from IndexedDB storage (" + self.loadFromJson.length + " bytes)");
					}
					else
					{
						self.loadFromJson = localStorage.getItem("__c2save_" + loadingFromSlot) || "";
						cr.logexport("Loaded state from WebStorage (" + self.loadFromJson.length + " bytes)");
					}
					self.suspendDrawing = false;
					if (!self.loadFromJson.length)
						self.trigger(cr.system_object.prototype.cnds.OnLoadFailed, null);
				}, function (e)
				{
					self.loadFromJson = localStorage.getItem("__c2save_" + loadingFromSlot) || "";
					cr.logexport("Loaded state from WebStorage (" + self.loadFromJson.length + " bytes)");
					self.suspendDrawing = false;
					if (!self.loadFromJson.length)
						self.trigger(cr.system_object.prototype.cnds.OnLoadFailed, null);
				});
			}
			else
			{
				this.loadFromJson = localStorage.getItem("__c2save_" + loadingFromSlot) || "";
				cr.logexport("Loaded state from WebStorage (" + this.loadFromJson.length + " bytes)");
				this.suspendDrawing = false;
				if (!self.loadFromJson.length)
					self.trigger(cr.system_object.prototype.cnds.OnLoadFailed, null);
			}
			this.loadFromSlot = "";
			this.saveToSlot = "";
		}
		if (this.loadFromJson.length)
		{
			this.ClearDeathRow();
			this.loadFromJSONString(this.loadFromJson);
			this.lastSaveJson = this.loadFromJson;
			this.trigger(cr.system_object.prototype.cnds.OnLoadComplete, null);
			this.lastSaveJson = "";
			this.loadFromJson = "";
		}
	};
	function CopyExtraObject(extra)
	{
		var p, ret = {};
		for (p in extra)
		{
			if (extra.hasOwnProperty(p))
			{
				if (extra[p] instanceof cr.ObjectSet)
					continue;
				if (extra[p] && typeof extra[p].c2userdata !== "undefined")
					continue;
				ret[p] = extra[p];
			}
		}
		return ret;
	};
	Runtime.prototype.saveToJSONString = function()
	{
		var i, len, j, lenj, type, layout, typeobj, g, c, a, v, p;
		var o = {
			"c2save":				true,
			"version":				1,
			"rt": {
				"time":				this.kahanTime.sum,
				"timescale":		this.timescale,
				"tickcount":		this.tickcount,
				"execcount":		this.execcount,
				"next_uid":			this.next_uid,
				"running_layout":	this.running_layout.sid,
				"start_time_offset": (Date.now() - this.start_time)
			},
			"types": {},
			"layouts": {},
			"events": {
				"groups": {},
				"cnds": {},
				"acts": {},
				"vars": {}
			}
		};
		for (i = 0, len = this.types_by_index.length; i < len; i++)
		{
			type = this.types_by_index[i];
			if (type.is_family || this.typeHasNoSaveBehavior(type))
				continue;
			typeobj = {
				"instances": []
			};
			if (cr.hasAnyOwnProperty(type.extra))
				typeobj["ex"] = CopyExtraObject(type.extra);
			for (j = 0, lenj = type.instances.length; j < lenj; j++)
			{
				typeobj["instances"].push(this.saveInstanceToJSON(type.instances[j]));
			}
			o["types"][type.sid.toString()] = typeobj;
		}
		for (i = 0, len = this.layouts_by_index.length; i < len; i++)
		{
			layout = this.layouts_by_index[i];
			o["layouts"][layout.sid.toString()] = layout.saveToJSON();
		}
		var ogroups = o["events"]["groups"];
		for (i = 0, len = this.allGroups.length; i < len; i++)
		{
			g = this.allGroups[i];
			ogroups[g.sid.toString()] = !!this.activeGroups[g.group_name];
		}
		var ocnds = o["events"]["cnds"];
		for (p in this.cndsBySid)
		{
			if (this.cndsBySid.hasOwnProperty(p))
			{
				c = this.cndsBySid[p];
				if (cr.hasAnyOwnProperty(c.extra))
					ocnds[p] = { "ex": CopyExtraObject(c.extra) };
			}
		}
		var oacts = o["events"]["acts"];
		for (p in this.actsBySid)
		{
			if (this.actsBySid.hasOwnProperty(p))
			{
				a = this.actsBySid[p];
				if (cr.hasAnyOwnProperty(a.extra))
					oacts[p] = { "ex": a.extra };
			}
		}
		var ovars = o["events"]["vars"];
		for (p in this.varsBySid)
		{
			if (this.varsBySid.hasOwnProperty(p))
			{
				v = this.varsBySid[p];
				if (!v.is_constant && (!v.parent || v.is_static))
					ovars[p] = v.data;
			}
		}
		o["system"] = this.system.saveToJSON();
		return JSON.stringify(o);
	};
	Runtime.prototype.refreshUidMap = function ()
	{
		var i, len, type, j, lenj, inst;
		this.objectsByUid = {};
		for (i = 0, len = this.types_by_index.length; i < len; i++)
		{
			type = this.types_by_index[i];
			if (type.is_family)
				continue;
			for (j = 0, lenj = type.instances.length; j < lenj; j++)
			{
				inst = type.instances[j];
				this.objectsByUid[inst.uid.toString()] = inst;
			}
		}
	};
	Runtime.prototype.loadFromJSONString = function (str)
	{
		var o = JSON.parse(str);
		if (!o["c2save"])
			return;		// probably not a c2 save state
		if (o["version"] > 1)
			return;		// from future version of c2; assume not compatible
		var rt = o["rt"];
		this.kahanTime.reset();
		this.kahanTime.sum = rt["time"];
		this.timescale = rt["timescale"];
		this.tickcount = rt["tickcount"];
		this.start_time = Date.now() - rt["start_time_offset"];
		var layout_sid = rt["running_layout"];
		if (layout_sid !== this.running_layout.sid)
		{
			var changeToLayout = this.getLayoutBySid(layout_sid);
			if (changeToLayout)
				this.doChangeLayout(changeToLayout);
			else
				return;		// layout that was saved on has gone missing (deleted?)
		}
		this.isLoadingState = true;
		var i, len, j, lenj, k, lenk, p, type, existing_insts, load_insts, inst, binst, layout, layer, g, iid, t;
		var otypes = o["types"];
		for (p in otypes)
		{
			if (otypes.hasOwnProperty(p))
			{
				type = this.getObjectTypeBySid(parseInt(p, 10));
				if (!type || type.is_family || this.typeHasNoSaveBehavior(type))
					continue;
				if (otypes[p]["ex"])
					type.extra = otypes[p]["ex"];
				else
					cr.wipe(type.extra);
				existing_insts = type.instances;
				load_insts = otypes[p]["instances"];
				for (i = 0, len = cr.min(existing_insts.length, load_insts.length); i < len; i++)
				{
					this.loadInstanceFromJSON(existing_insts[i], load_insts[i]);
				}
				for (i = load_insts.length, len = existing_insts.length; i < len; i++)
					this.DestroyInstance(existing_insts[i]);
				for (i = existing_insts.length, len = load_insts.length; i < len; i++)
				{
					layer = null;
					if (type.plugin.is_world)
					{
						layer = this.running_layout.getLayerBySid(load_insts[i]["w"]["l"]);
						if (!layer)
							continue;
					}
					inst = this.createInstanceFromInit(type.default_instance, layer, false, 0, 0, true);
					this.loadInstanceFromJSON(inst, load_insts[i]);
				}
				type.stale_iids = true;
			}
		}
		this.ClearDeathRow();
		this.refreshUidMap();
		var olayouts = o["layouts"];
		for (p in olayouts)
		{
			if (olayouts.hasOwnProperty(p))
			{
				layout = this.getLayoutBySid(parseInt(p, 10));
				if (!layout)
					continue;		// must've gone missing
				layout.loadFromJSON(olayouts[p]);
			}
		}
		var ogroups = o["events"]["groups"];
		for (p in ogroups)
		{
			if (ogroups.hasOwnProperty(p))
			{
				g = this.getGroupBySid(parseInt(p, 10));
				if (g)
					this.activeGroups[g.group_name] = ogroups[p];
			}
		}
		var ocnds = o["events"]["cnds"];
		for (p in ocnds)
		{
			if (ocnds.hasOwnProperty(p) && this.cndsBySid.hasOwnProperty(p))
			{
				this.cndsBySid[p].extra = ocnds[p]["ex"];
			}
		}
		var oacts = o["events"]["acts"];
		for (p in oacts)
		{
			if (oacts.hasOwnProperty(p) && this.actsBySid.hasOwnProperty(p))
			{
				this.actsBySid[p].extra = oacts[p]["ex"];
			}
		}
		var ovars = o["events"]["vars"];
		for (p in ovars)
		{
			if (ovars.hasOwnProperty(p) && this.varsBySid.hasOwnProperty(p))
			{
				this.varsBySid[p].data = ovars[p];
			}
		}
		this.next_uid = rt["next_uid"];
		this.isLoadingState = false;
		this.system.loadFromJSON(o["system"]);
		for (i = 0, len = this.types_by_index.length; i < len; i++)
		{
			type = this.types_by_index[i];
			if (type.is_family)
				continue;
			for (j = 0, lenj = type.instances.length; j < lenj; j++)
			{
				inst = type.instances[j];
				if (type.is_contained)
				{
					iid = inst.get_iid();
					inst.siblings.length = 0;
					for (k = 0, lenk = type.container.length; k < lenk; k++)
					{
						t = type.container[k];
						if (type === t)
							continue;
;
						inst.siblings.push(t.instances[iid]);
					}
				}
				if (inst.afterLoad)
					inst.afterLoad();
				if (inst.behavior_insts)
				{
					for (k = 0, lenk = inst.behavior_insts.length; k < lenk; k++)
					{
						binst = inst.behavior_insts[k];
						if (binst.afterLoad)
							binst.afterLoad();
					}
				}
			}
		}
		this.redraw = true;
	};
	Runtime.prototype.saveInstanceToJSON = function(inst, state_only)
	{
		var i, len, world, behinst, et;
		var type = inst.type;
		var plugin = type.plugin;
		var o = {};
		if (state_only)
			o["c2"] = true;		// mark as known json data from Construct 2
		else
			o["uid"] = inst.uid;
		if (cr.hasAnyOwnProperty(inst.extra))
			o["ex"] = CopyExtraObject(inst.extra);
		if (inst.instance_vars && inst.instance_vars.length)
		{
			o["ivs"] = {};
			for (i = 0, len = inst.instance_vars.length; i < len; i++)
			{
				o["ivs"][inst.type.instvar_sids[i].toString()] = inst.instance_vars[i];
			}
		}
		if (plugin.is_world)
		{
			world = {
				"x": inst.x,
				"y": inst.y,
				"w": inst.width,
				"h": inst.height,
				"l": inst.layer.sid,
				"zi": inst.get_zindex()
			};
			if (inst.angle !== 0)
				world["a"] = inst.angle;
			if (inst.opacity !== 1)
				world["o"] = inst.opacity;
			if (inst.hotspotX !== 0.5)
				world["hX"] = inst.hotspotX;
			if (inst.hotspotY !== 0.5)
				world["hY"] = inst.hotspotY;
			if (inst.blend_mode !== 0)
				world["bm"] = inst.blend_mode;
			if (!inst.visible)
				world["v"] = inst.visible;
			if (!inst.collisionsEnabled)
				world["ce"] = inst.collisionsEnabled;
			if (inst.my_timescale !== -1)
				world["mts"] = inst.my_timescale;
			if (type.effect_types.length)
			{
				world["fx"] = [];
				for (i = 0, len = type.effect_types.length; i < len; i++)
				{
					et = type.effect_types[i];
					world["fx"].push({"name": et.name,
									  "active": inst.active_effect_flags[et.index],
									  "params": inst.effect_params[et.index] });
				}
			}
			o["w"] = world;
		}
		if (inst.behavior_insts && inst.behavior_insts.length)
		{
			o["behs"] = {};
			for (i = 0, len = inst.behavior_insts.length; i < len; i++)
			{
				behinst = inst.behavior_insts[i];
				if (behinst.saveToJSON)
					o["behs"][behinst.type.sid.toString()] = behinst.saveToJSON();
			}
		}
		if (inst.saveToJSON)
			o["data"] = inst.saveToJSON();
		return o;
	};
	Runtime.prototype.getInstanceVarIndexBySid = function (type, sid_)
	{
		var i, len;
		for (i = 0, len = type.instvar_sids.length; i < len; i++)
		{
			if (type.instvar_sids[i] === sid_)
				return i;
		}
		return -1;
	};
	Runtime.prototype.getBehaviorIndexBySid = function (inst, sid_)
	{
		var i, len;
		for (i = 0, len = inst.behavior_insts.length; i < len; i++)
		{
			if (inst.behavior_insts[i].type.sid === sid_)
				return i;
		}
		return -1;
	};
	Runtime.prototype.loadInstanceFromJSON = function(inst, o, state_only)
	{
		var p, i, len, iv, oivs, world, fxindex, obehs, behindex;
		var oldlayer;
		var type = inst.type;
		var plugin = type.plugin;
		if (state_only)
		{
			if (!o["c2"])
				return;
		}
		else
			inst.uid = o["uid"];
		if (o["ex"])
			inst.extra = o["ex"];
		else
			cr.wipe(inst.extra);
		oivs = o["ivs"];
		if (oivs)
		{
			for (p in oivs)
			{
				if (oivs.hasOwnProperty(p))
				{
					iv = this.getInstanceVarIndexBySid(type, parseInt(p, 10));
					if (iv < 0 || iv >= inst.instance_vars.length)
						continue;		// must've gone missing
					inst.instance_vars[iv] = oivs[p];
				}
			}
		}
		if (plugin.is_world)
		{
			world = o["w"];
			if (inst.layer.sid !== world["l"])
			{
				oldlayer = inst.layer;
				inst.layer = this.running_layout.getLayerBySid(world["l"]);
				if (inst.layer)
				{
					inst.layer.instances.push(inst);
					inst.layer.zindices_stale = true;
					cr.arrayFindRemove(oldlayer.instances, inst);
					oldlayer.zindices_stale = true;
				}
				else
				{
					inst.layer = oldlayer;
					this.DestroyInstance(inst);
				}
			}
			inst.x = world["x"];
			inst.y = world["y"];
			inst.width = world["w"];
			inst.height = world["h"];
			inst.zindex = world["zi"];
			inst.angle = world.hasOwnProperty("a") ? world["a"] : 0;
			inst.opacity = world.hasOwnProperty("o") ? world["o"] : 1;
			inst.hotspotX = world.hasOwnProperty("hX") ? world["hX"] : 0.5;
			inst.hotspotY = world.hasOwnProperty("hY") ? world["hY"] : 0.5;
			inst.visible = world.hasOwnProperty("v") ? world["v"] : true;
			inst.collisionsEnabled = world.hasOwnProperty("ce") ? world["ce"] : true;
			inst.my_timescale = world.hasOwnProperty("mts") ? world["mts"] : -1;
			inst.blend_mode = world.hasOwnProperty("bm") ? world["bm"] : 0;;
			inst.compositeOp = cr.effectToCompositeOp(inst.blend_mode);
			if (this.gl)
				cr.setGLBlend(inst, inst.blend_mode, this.gl);
			inst.set_bbox_changed();
			if (world.hasOwnProperty("fx"))
			{
				for (i = 0, len = world["fx"].length; i < len; i++)
				{
					fxindex = type.getEffectIndexByName(world["fx"][i]["name"]);
					if (fxindex < 0)
						continue;		// must've gone missing
					inst.active_effect_flags[fxindex] = world["fx"][i]["active"];
					inst.effect_params[fxindex] = world["fx"][i]["params"];
				}
			}
			inst.updateActiveEffects();
		}
		obehs = o["behs"];
		if (obehs)
		{
			for (p in obehs)
			{
				if (obehs.hasOwnProperty(p))
				{
					behindex = this.getBehaviorIndexBySid(inst, parseInt(p, 10));
					if (behindex < 0)
						continue;		// must've gone missing
					inst.behavior_insts[behindex].loadFromJSON(obehs[p]);
				}
			}
		}
		if (o["data"])
			inst.loadFromJSON(o["data"]);
	};
	cr.runtime = Runtime;
	cr.createRuntime = function (canvasid)
	{
		return new Runtime(document.getElementById(canvasid));
	};
	cr.createDCRuntime = function (w, h)
	{
		return new Runtime({ "dc": true, "width": w, "height": h });
	};
	window["cr_createRuntime"] = cr.createRuntime;
	window["cr_createDCRuntime"] = cr.createDCRuntime;
	window["createCocoonJSRuntime"] = function ()
	{
		window["c2cocoonjs"] = true;
		var canvas = document.createElement("screencanvas") || document.createElement("canvas");
		canvas.screencanvas = true;
		document.body.appendChild(canvas);
		var rt = new Runtime(canvas);
		window["c2runtime"] = rt;
		window.addEventListener("orientationchange", function () {
			window["c2runtime"]["setSize"](window.innerWidth, window.innerHeight);
		});
		window["c2runtime"]["setSize"](window.innerWidth, window.innerHeight);
		return rt;
	};
}());
window["cr_getC2Runtime"] = function()
{
	var canvas = document.getElementById("c2canvas");
	if (canvas)
		return canvas["c2runtime"];
	else if (window["c2runtime"])
		return window["c2runtime"];
	else
		return null;
}
window["cr_sizeCanvas"] = function(w, h)
{
	if (w === 0 || h === 0)
		return;
	var runtime = window["cr_getC2Runtime"]();
	if (runtime)
		runtime["setSize"](w, h);
}
window["cr_setSuspended"] = function(s)
{
	var runtime = window["cr_getC2Runtime"]();
	if (runtime)
		runtime["setSuspended"](s);
}
;
(function()
{
	function Layout(runtime, m)
	{
		this.runtime = runtime;
		this.event_sheet = null;
		this.scrollX = (this.runtime.original_width / 2);
		this.scrollY = (this.runtime.original_height / 2);
		this.scale = 1.0;
		this.angle = 0;
		this.first_visit = true;
		this.name = m[0];
		this.width = m[1];
		this.height = m[2];
		this.unbounded_scrolling = m[3];
		this.sheetname = m[4];
		this.sid = m[5];
		var lm = m[6];
		var i, len;
		this.layers = [];
		this.initial_types = [];
		for (i = 0, len = lm.length; i < len; i++)
		{
			var layer = new cr.layer(this, lm[i]);
			layer.number = i;
			cr.seal(layer);
			this.layers.push(layer);
		}
		var im = m[7];
		this.initial_nonworld = [];
		for (i = 0, len = im.length; i < len; i++)
		{
			var inst = im[i];
			var type = this.runtime.types_by_index[inst[1]];
;
			if (!type.default_instance)
				type.default_instance = inst;
			this.initial_nonworld.push(inst);
			if (this.initial_types.indexOf(type) === -1)
				this.initial_types.push(type);
		}
		this.effect_types = [];
		this.active_effect_types = [];
		this.effect_params = [];
		for (i = 0, len = m[8].length; i < len; i++)
		{
			this.effect_types.push({
				id: m[8][i][0],
				name: m[8][i][1],
				shaderindex: -1,
				active: true,
				index: i
			});
			this.effect_params.push(m[8][i][2].slice(0));
		}
		this.updateActiveEffects();
		this.rcTex = new cr.rect(0, 0, 1, 1);
		this.rcTex2 = new cr.rect(0, 0, 1, 1);
		this.persist_data = {};
	};
	Layout.prototype.saveObjectToPersist = function (inst)
	{
		var sidStr = inst.type.sid.toString();
		if (!this.persist_data.hasOwnProperty(sidStr))
			this.persist_data[sidStr] = [];
		var type_persist = this.persist_data[sidStr];
		type_persist.push(this.runtime.saveInstanceToJSON(inst));
	};
	Layout.prototype.hasOpaqueBottomLayer = function ()
	{
		var layer = this.layers[0];
		return !layer.transparent && layer.opacity === 1.0 && !layer.forceOwnTexture && layer.visible;
	};
	Layout.prototype.updateActiveEffects = function ()
	{
		this.active_effect_types.length = 0;
		var i, len, et;
		for (i = 0, len = this.effect_types.length; i < len; i++)
		{
			et = this.effect_types[i];
			if (et.active)
				this.active_effect_types.push(et);
		}
	};
	Layout.prototype.getEffectByName = function (name_)
	{
		var i, len, et;
		for (i = 0, len = this.effect_types.length; i < len; i++)
		{
			et = this.effect_types[i];
			if (et.name === name_)
				return et;
		}
		return null;
	};
	var created_instances = [];
	Layout.prototype.startRunning = function ()
	{
		if (this.sheetname)
		{
			this.event_sheet = this.runtime.eventsheets[this.sheetname];
;
		}
		this.runtime.running_layout = this;
		this.scrollX = (this.runtime.original_width / 2);
		this.scrollY = (this.runtime.original_height / 2);
		var i, k, len, lenk, type, type_instances, inst, iid, t, s, p, q, type_data, layer;
		for (i = 0, len = this.runtime.types_by_index.length; i < len; i++)
		{
			type = this.runtime.types_by_index[i];
			if (type.is_family)
				continue;		// instances are only transferred for their real type
			type_instances = type.instances;
			for (k = 0, lenk = type_instances.length; k < lenk; k++)
			{
				inst = type_instances[k];
				if (inst.layer)
				{
					var num = inst.layer.number;
					if (num >= this.layers.length)
						num = this.layers.length - 1;
					inst.layer = this.layers[num];
					inst.layer.instances.push(inst);
					inst.layer.zindices_stale = true;
				}
			}
		}
		var layer;
		created_instances.length = 0;
		this.boundScrolling();
		for (i = 0, len = this.layers.length; i < len; i++)
		{
			layer = this.layers[i];
			layer.createInitialInstances();		// fills created_instances
			layer.disableAngle = true;
			var px = layer.canvasToLayer(0, 0, true, true);
			var py = layer.canvasToLayer(0, 0, false, true);
			layer.disableAngle = false;
			if (this.runtime.pixel_rounding)
			{
				px = (px + 0.5) | 0;
				py = (py + 0.5) | 0;
			}
			layer.rotateViewport(px, py, null);
		}
		var uids_changed = false;
		if (!this.first_visit)
		{
			for (p in this.persist_data)
			{
				if (this.persist_data.hasOwnProperty(p))
				{
					type = this.runtime.getObjectTypeBySid(parseInt(p, 10));
					if (!type || type.is_family || !this.runtime.typeHasPersistBehavior(type))
						continue;
					type_data = this.persist_data[p];
					for (i = 0, len = type_data.length; i < len; i++)
					{
						layer = null;
						if (type.plugin.is_world)
						{
							layer = this.getLayerBySid(type_data[i]["w"]["l"]);
							if (!layer)
								continue;
						}
						inst = this.runtime.createInstanceFromInit(type.default_instance, layer, false, 0, 0, true);
						this.runtime.loadInstanceFromJSON(inst, type_data[i]);
						uids_changed = true;
						created_instances.push(inst);
					}
					type_data.length = 0;
				}
			}
			for (i = 0, len = this.layers.length; i < len; i++)
			{
				this.layers[i].instances.sort(sortInstanceByZIndex);
				this.layers[i].zindices_stale = true;		// in case of duplicates/holes
			}
		}
		if (uids_changed)
		{
			this.runtime.ClearDeathRow();
			this.runtime.refreshUidMap();
		}
		for (i = 0; i < created_instances.length; i++)
		{
			inst = created_instances[i];
			if (!inst.type.is_contained)
				continue;
			iid = inst.get_iid();
			for (k = 0, lenk = inst.type.container.length; k < lenk; k++)
			{
				t = inst.type.container[k];
				if (inst.type === t)
					continue;
				if (t.instances.length > iid)
					inst.siblings.push(t.instances[iid]);
				else
				{
					if (!t.default_instance)
					{
					}
					else
					{
						s = this.runtime.createInstanceFromInit(t.default_instance, inst.layer, true, inst.x, inst.y, true);
						this.runtime.ClearDeathRow();
						t.updateIIDs();
						inst.siblings.push(s);
						created_instances.push(s);		// come back around and link up its own instances too
					}
				}
			}
		}
		for (i = 0, len = this.initial_nonworld.length; i < len; i++)
		{
			inst = this.runtime.createInstanceFromInit(this.initial_nonworld[i], null, true);
;
		}
		this.runtime.changelayout = null;
		this.runtime.ClearDeathRow();
		if (this.runtime.ctx && !this.runtime.isDomFree)
		{
			for (i = 0, len = this.runtime.types_by_index.length; i < len; i++)
			{
				t = this.runtime.types_by_index[i];
				if (t.is_family || !t.instances.length || !t.preloadCanvas2D)
					continue;
				t.preloadCanvas2D(this.runtime.ctx);
			}
		}
		/*
		if (this.runtime.glwrap)
		{
			console.log("Estimated VRAM at layout start: " + this.runtime.glwrap.textureCount() + " textures, approx. " + Math.round(this.runtime.glwrap.estimateVRAM() / 1024) + " kb");
		}
		*/
		for (i = 0, len = created_instances.length; i < len; i++)
		{
			inst = created_instances[i];
			this.runtime.trigger(Object.getPrototypeOf(inst.type.plugin).cnds.OnCreated, inst);
		}
		created_instances.length = 0;
		this.runtime.trigger(cr.system_object.prototype.cnds.OnLayoutStart, null);
		this.first_visit = false;
	};
	Layout.prototype.createGlobalNonWorlds = function ()
	{
		var i, k, len, initial_inst, inst, type;
		for (i = 0, k = 0, len = this.initial_nonworld.length; i < len; i++)
		{
			initial_inst = this.initial_nonworld[i];
			type = this.runtime.types_by_index[initial_inst[1]];
			if (type.global)
				inst = this.runtime.createInstanceFromInit(initial_inst, null, true);
			else
			{
				this.initial_nonworld[k] = initial_inst;
				k++;
			}
		}
		this.initial_nonworld.length = k;
	};
	Layout.prototype.stopRunning = function ()
	{
;
		/*
		if (this.runtime.glwrap)
		{
			console.log("Estimated VRAM at layout end: " + this.runtime.glwrap.textureCount() + " textures, approx. " + Math.round(this.runtime.glwrap.estimateVRAM() / 1024) + " kb");
		}
		*/
		this.runtime.trigger(cr.system_object.prototype.cnds.OnLayoutEnd, null);
		this.runtime.system.waits.length = 0;
		var i, leni, j, lenj;
		var layer_instances, inst, type;
		for (i = 0, leni = this.layers.length; i < leni; i++)
		{
			layer_instances = this.layers[i].instances;
			for (j = 0, lenj = layer_instances.length; j < lenj; j++)
			{
				inst = layer_instances[j];
				if (!inst.type.global)
				{
					if (this.runtime.typeHasPersistBehavior(inst.type))
						this.saveObjectToPersist(inst);
					this.runtime.DestroyInstance(inst);
				}
			}
			this.runtime.ClearDeathRow();
			layer_instances.length = 0;
			this.layers[i].zindices_stale = true;
		}
		for (i = 0, leni = this.runtime.types_by_index.length; i < leni; i++)
		{
			type = this.runtime.types_by_index[i];
			if (type.global || type.plugin.is_world || type.plugin.singleglobal || type.is_family)
				continue;
			for (j = 0, lenj = type.instances.length; j < lenj; j++)
				this.runtime.DestroyInstance(type.instances[j]);
			this.runtime.ClearDeathRow();
		}
	};
	Layout.prototype.draw = function (ctx)
	{
		var layout_canvas;
		var layout_ctx = ctx;
		var ctx_changed = false;
		var render_offscreen = !this.runtime.fullscreenScalingQuality;
		if (render_offscreen)
		{
			if (!this.runtime.layout_canvas)
			{
				this.runtime.layout_canvas = document.createElement("canvas");
				layout_canvas = this.runtime.layout_canvas;
				layout_canvas.width = this.runtime.draw_width;
				layout_canvas.height = this.runtime.draw_height;
				this.runtime.layout_ctx = layout_canvas.getContext("2d");
				ctx_changed = true;
			}
			layout_canvas = this.runtime.layout_canvas;
			layout_ctx = this.runtime.layout_ctx;
			if (layout_canvas.width !== this.runtime.draw_width)
			{
				layout_canvas.width = this.runtime.draw_width;
				ctx_changed = true;
			}
			if (layout_canvas.height !== this.runtime.draw_height)
			{
				layout_canvas.height = this.runtime.draw_height;
				ctx_changed = true;
			}
			if (ctx_changed)
			{
				layout_ctx["webkitImageSmoothingEnabled"] = this.runtime.linearSampling;
				layout_ctx["mozImageSmoothingEnabled"] = this.runtime.linearSampling;
				layout_ctx["msImageSmoothingEnabled"] = this.runtime.linearSampling;
				layout_ctx["imageSmoothingEnabled"] = this.runtime.linearSampling;
			}
		}
		layout_ctx.globalAlpha = 1;
		layout_ctx.globalCompositeOperation = "source-over";
		if (this.runtime.alphaBackground && !this.hasOpaqueBottomLayer())
			layout_ctx.clearRect(0, 0, this.runtime.draw_width, this.runtime.draw_height);
		var i, len, l;
		for (i = 0, len = this.layers.length; i < len; i++)
		{
			l = this.layers[i];
			if (l.visible && l.opacity > 0 && l.blend_mode !== 11)
				l.draw(layout_ctx);
		}
		if (render_offscreen)
		{
			ctx.drawImage(layout_canvas, 0, 0, this.runtime.width, this.runtime.height);
		}
	};
	Layout.prototype.drawGL = function (glw)
	{
		var render_to_texture = (this.active_effect_types.length > 0 ||
								 this.runtime.uses_background_blending ||
								 !this.runtime.fullscreenScalingQuality);
		if (render_to_texture)
		{
			if (!this.runtime.layout_tex)
			{
				this.runtime.layout_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling);
			}
			if (this.runtime.layout_tex.c2width !== this.runtime.draw_width || this.runtime.layout_tex.c2height !== this.runtime.draw_height)
			{
				glw.deleteTexture(this.runtime.layout_tex);
				this.runtime.layout_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling);
			}
			glw.setRenderingToTexture(this.runtime.layout_tex);
			if (!this.runtime.fullscreenScalingQuality)
			{
				glw.setSize(this.runtime.draw_width, this.runtime.draw_height);
			}
		}
		else
		{
			if (this.runtime.layout_tex)
			{
				glw.setRenderingToTexture(null);
				glw.deleteTexture(this.runtime.layout_tex);
				this.runtime.layout_tex = null;
			}
		}
		if (this.runtime.alphaBackground && !this.hasOpaqueBottomLayer())
			glw.clear(0, 0, 0, 0);
		var i, len;
		for (i = 0, len = this.layers.length; i < len; i++)
		{
			if (this.layers[i].visible && this.layers[i].opacity > 0)
				this.layers[i].drawGL(glw);
		}
		if (render_to_texture)
		{
			if (this.active_effect_types.length === 0 ||
				(this.active_effect_types.length === 1 && this.runtime.fullscreenScalingQuality))
			{
				if (this.active_effect_types.length === 1)
				{
					var etindex = this.active_effect_types[0].index;
					glw.switchProgram(this.active_effect_types[0].shaderindex);
					glw.setProgramParameters(null,								// backTex
											 1.0 / this.runtime.draw_width,		// pixelWidth
											 1.0 / this.runtime.draw_height,	// pixelHeight
											 0.0, 0.0,							// destStart
											 1.0, 1.0,							// destEnd
											 this.scale,						// layerScale
											 this.angle,						// layerAngle
											 0.0, 0.0,							// viewOrigin
											 this.effect_params[etindex]);		// fx parameters
					if (glw.programIsAnimated(this.active_effect_types[0].shaderindex))
						this.runtime.redraw = true;
				}
				else
					glw.switchProgram(0);
				if (!this.runtime.fullscreenScalingQuality)
				{
					glw.setSize(this.runtime.width, this.runtime.height);
				}
				glw.setRenderingToTexture(null);				// to backbuffer
				glw.setOpacity(1);
				glw.setTexture(this.runtime.layout_tex);
				glw.setAlphaBlend();
				glw.resetModelView();
				glw.updateModelView();
				var halfw = this.runtime.width / 2;
				var halfh = this.runtime.height / 2;
				glw.quad(-halfw, halfh, halfw, halfh, halfw, -halfh, -halfw, -halfh);
				glw.setTexture(null);
			}
			else
			{
				this.renderEffectChain(glw, null, null, null);
			}
		}
	};
	Layout.prototype.getRenderTarget = function()
	{
		return (this.active_effect_types.length > 0 ||
				this.runtime.uses_background_blending ||
				!this.runtime.fullscreenScalingQuality) ? this.runtime.layout_tex : null;
	};
	Layout.prototype.getMinLayerScale = function ()
	{
		var m = this.layers[0].getScale();
		var i, len, l;
		for (i = 1, len = this.layers.length; i < len; i++)
		{
			l = this.layers[i];
			if (l.parallaxX === 0 && l.parallaxY === 0)
				continue;
			if (l.getScale() < m)
				m = l.getScale();
		}
		return m;
	};
	Layout.prototype.scrollToX = function (x)
	{
		if (!this.unbounded_scrolling)
		{
			var widthBoundary = (this.runtime.draw_width * (1 / this.getMinLayerScale()) / 2);
			if (x > this.width - widthBoundary)
				x = this.width - widthBoundary;
			if (x < widthBoundary)
				x = widthBoundary;
		}
		if (this.scrollX !== x)
		{
			this.scrollX = x;
			this.runtime.redraw = true;
		}
	};
	Layout.prototype.scrollToY = function (y)
	{
		if (!this.unbounded_scrolling)
		{
			var heightBoundary = (this.runtime.draw_height * (1 / this.getMinLayerScale()) / 2);
			if (y > this.height - heightBoundary)
				y = this.height - heightBoundary;
			if (y < heightBoundary)
				y = heightBoundary;
		}
		if (this.scrollY !== y)
		{
			this.scrollY = y;
			this.runtime.redraw = true;
		}
	};
	Layout.prototype.boundScrolling = function ()
	{
		this.scrollToX(this.scrollX);
		this.scrollToY(this.scrollY);
	};
	Layout.prototype.renderEffectChain = function (glw, layer, inst, rendertarget)
	{
		var active_effect_types = inst ?
							inst.active_effect_types :
							layer ?
								layer.active_effect_types :
								this.active_effect_types;
		var layerScale = 1, layerAngle = 0, viewOriginLeft = 0, viewOriginTop = 0;
		if (inst)
		{
			layerScale = inst.layer.getScale();
			layerAngle = inst.layer.getAngle();
			viewOriginLeft = inst.layer.viewLeft;
			viewOriginTop = inst.layer.viewTop;
		}
		else if (layer)
		{
			layerScale = layer.getScale();
			layerAngle = layer.getAngle();
			viewOriginLeft = layer.viewLeft;
			viewOriginTop = layer.viewTop;
		}
		var fx_tex = this.runtime.fx_tex;
		var i, len, last, temp, fx_index = 0, other_fx_index = 1;
		var y, h;
		var windowWidth = this.runtime.draw_width;
		var windowHeight = this.runtime.draw_height;
		var halfw = windowWidth / 2;
		var halfh = windowHeight / 2;
		var rcTex = layer ? layer.rcTex : this.rcTex;
		var rcTex2 = layer ? layer.rcTex2 : this.rcTex2;
		var screenleft = 0, clearleft = 0;
		var screentop = 0, cleartop = 0;
		var screenright = windowWidth, clearright = windowWidth;
		var screenbottom = windowHeight, clearbottom = windowHeight;
		var boxExtendHorizontal = 0;
		var boxExtendVertical = 0;
		var inst_layer_angle = inst ? inst.layer.getAngle() : 0;
		if (inst)
		{
			for (i = 0, len = active_effect_types.length; i < len; i++)
			{
				boxExtendHorizontal += glw.getProgramBoxExtendHorizontal(active_effect_types[i].shaderindex);
				boxExtendVertical += glw.getProgramBoxExtendVertical(active_effect_types[i].shaderindex);
			}
			var bbox = inst.bbox;
			screenleft = layer.layerToCanvas(bbox.left, bbox.top, true, true);
			screentop = layer.layerToCanvas(bbox.left, bbox.top, false, true);
			screenright = layer.layerToCanvas(bbox.right, bbox.bottom, true, true);
			screenbottom = layer.layerToCanvas(bbox.right, bbox.bottom, false, true);
			if (inst_layer_angle !== 0)
			{
				var screentrx = layer.layerToCanvas(bbox.right, bbox.top, true, true);
				var screentry = layer.layerToCanvas(bbox.right, bbox.top, false, true);
				var screenblx = layer.layerToCanvas(bbox.left, bbox.bottom, true, true);
				var screenbly = layer.layerToCanvas(bbox.left, bbox.bottom, false, true);
				temp = Math.min(screenleft, screenright, screentrx, screenblx);
				screenright = Math.max(screenleft, screenright, screentrx, screenblx);
				screenleft = temp;
				temp = Math.min(screentop, screenbottom, screentry, screenbly);
				screenbottom = Math.max(screentop, screenbottom, screentry, screenbly);
				screentop = temp;
			}
			screenleft -= boxExtendHorizontal;
			screentop -= boxExtendVertical;
			screenright += boxExtendHorizontal;
			screenbottom += boxExtendVertical;
			rcTex2.left = screenleft / windowWidth;
			rcTex2.top = 1 - screentop / windowHeight;
			rcTex2.right = screenright / windowWidth;
			rcTex2.bottom = 1 - screenbottom / windowHeight;
			clearleft = screenleft = cr.floor(screenleft);
			cleartop = screentop = cr.floor(screentop);
			clearright = screenright = cr.ceil(screenright);
			clearbottom = screenbottom = cr.ceil(screenbottom);
			clearleft -= boxExtendHorizontal;
			cleartop -= boxExtendVertical;
			clearright += boxExtendHorizontal;
			clearbottom += boxExtendVertical;
			if (screenleft < 0)					screenleft = 0;
			if (screentop < 0)					screentop = 0;
			if (screenright > windowWidth)		screenright = windowWidth;
			if (screenbottom > windowHeight)	screenbottom = windowHeight;
			if (clearleft < 0)					clearleft = 0;
			if (cleartop < 0)					cleartop = 0;
			if (clearright > windowWidth)		clearright = windowWidth;
			if (clearbottom > windowHeight)		clearbottom = windowHeight;
			rcTex.left = screenleft / windowWidth;
			rcTex.top = 1 - screentop / windowHeight;
			rcTex.right = screenright / windowWidth;
			rcTex.bottom = 1 - screenbottom / windowHeight;
		}
		else
		{
			rcTex.left = rcTex2.left = 0;
			rcTex.top = rcTex2.top = 0;
			rcTex.right = rcTex2.right = 1;
			rcTex.bottom = rcTex2.bottom = 1;
		}
		var pre_draw = (inst && (((inst.angle || inst_layer_angle) && glw.programUsesDest(active_effect_types[0].shaderindex)) || boxExtendHorizontal !== 0 || boxExtendVertical !== 0 || inst.opacity !== 1 || inst.type.plugin.must_predraw)) || (layer && !inst && layer.opacity !== 1);
		glw.setAlphaBlend();
		if (pre_draw)
		{
			if (!fx_tex[fx_index])
			{
				fx_tex[fx_index] = glw.createEmptyTexture(windowWidth, windowHeight, this.runtime.linearSampling);
			}
			if (fx_tex[fx_index].c2width !== windowWidth || fx_tex[fx_index].c2height !== windowHeight)
			{
				glw.deleteTexture(fx_tex[fx_index]);
				fx_tex[fx_index] = glw.createEmptyTexture(windowWidth, windowHeight, this.runtime.linearSampling);
			}
			glw.switchProgram(0);
			glw.setRenderingToTexture(fx_tex[fx_index]);
			h = clearbottom - cleartop;
			y = (windowHeight - cleartop) - h;
			glw.clearRect(clearleft, y, clearright - clearleft, h);
			if (inst)
			{
				inst.drawGL(glw);
			}
			else
			{
				glw.setTexture(this.runtime.layer_tex);
				glw.setOpacity(layer.opacity);
				glw.resetModelView();
				glw.translate(-halfw, -halfh);
				glw.updateModelView();
				glw.quadTex(screenleft, screenbottom, screenright, screenbottom, screenright, screentop, screenleft, screentop, rcTex);
			}
			rcTex2.left = rcTex2.top = 0;
			rcTex2.right = rcTex2.bottom = 1;
			if (inst)
			{
				temp = rcTex.top;
				rcTex.top = rcTex.bottom;
				rcTex.bottom = temp;
			}
			fx_index = 1;
			other_fx_index = 0;
		}
		glw.setOpacity(1);
		var last = active_effect_types.length - 1;
		var post_draw = glw.programUsesCrossSampling(active_effect_types[last].shaderindex) ||
						(!layer && !inst && !this.runtime.fullscreenScalingQuality);
		var etindex = 0;
		for (i = 0, len = active_effect_types.length; i < len; i++)
		{
			if (!fx_tex[fx_index])
			{
				fx_tex[fx_index] = glw.createEmptyTexture(windowWidth, windowHeight, this.runtime.linearSampling);
			}
			if (fx_tex[fx_index].c2width !== windowWidth || fx_tex[fx_index].c2height !== windowHeight)
			{
				glw.deleteTexture(fx_tex[fx_index]);
				fx_tex[fx_index] = glw.createEmptyTexture(windowWidth, windowHeight, this.runtime.linearSampling);
			}
			glw.switchProgram(active_effect_types[i].shaderindex);
			etindex = active_effect_types[i].index;
			if (glw.programIsAnimated(active_effect_types[i].shaderindex))
				this.runtime.redraw = true;
			if (i == 0 && !pre_draw)
			{
				glw.setRenderingToTexture(fx_tex[fx_index]);
				h = clearbottom - cleartop;
				y = (windowHeight - cleartop) - h;
				glw.clearRect(clearleft, y, clearright - clearleft, h);
				if (inst)
				{
					glw.setProgramParameters(rendertarget,					// backTex
											 1.0 / inst.width,				// pixelWidth
											 1.0 / inst.height,				// pixelHeight
											 rcTex2.left, rcTex2.top,		// destStart
											 rcTex2.right, rcTex2.bottom,	// destEnd
											 layerScale,
											 layerAngle,
											 viewOriginLeft, viewOriginTop,
											 inst.effect_params[etindex]);	// fx params
					inst.drawGL(glw);
				}
				else
				{
					glw.setProgramParameters(rendertarget,					// backTex
											 1.0 / windowWidth,				// pixelWidth
											 1.0 / windowHeight,			// pixelHeight
											 0.0, 0.0,						// destStart
											 1.0, 1.0,						// destEnd
											 layerScale,
											 layerAngle,
											 viewOriginLeft, viewOriginTop,
											 layer ?						// fx params
												layer.effect_params[etindex] :
												this.effect_params[etindex]);
					glw.setTexture(layer ? this.runtime.layer_tex : this.runtime.layout_tex);
					glw.resetModelView();
					glw.translate(-halfw, -halfh);
					glw.updateModelView();
					glw.quadTex(screenleft, screenbottom, screenright, screenbottom, screenright, screentop, screenleft, screentop, rcTex);
				}
				rcTex2.left = rcTex2.top = 0;
				rcTex2.right = rcTex2.bottom = 1;
				if (inst && !post_draw)
				{
					temp = screenbottom;
					screenbottom = screentop;
					screentop = temp;
				}
			}
			else
			{
				glw.setProgramParameters(rendertarget,						// backTex
										 1.0 / windowWidth,					// pixelWidth
										 1.0 / windowHeight,				// pixelHeight
										 rcTex2.left, rcTex2.top,			// destStart
										 rcTex2.right, rcTex2.bottom,		// destEnd
										 layerScale,
										 layerAngle,
										 viewOriginLeft, viewOriginTop,
										 inst ?								// fx params
											inst.effect_params[etindex] :
											layer ?
												layer.effect_params[etindex] :
												this.effect_params[etindex]);
				glw.setTexture(null);
				if (i === last && !post_draw)
				{
					if (inst)
						glw.setBlend(inst.srcBlend, inst.destBlend);
					else if (layer)
						glw.setBlend(layer.srcBlend, layer.destBlend);
					glw.setRenderingToTexture(rendertarget);
				}
				else
				{
					glw.setRenderingToTexture(fx_tex[fx_index]);
					h = clearbottom - cleartop;
					y = (windowHeight - cleartop) - h;
					glw.clearRect(clearleft, y, clearright - clearleft, h);
				}
				glw.setTexture(fx_tex[other_fx_index]);
				glw.resetModelView();
				glw.translate(-halfw, -halfh);
				glw.updateModelView();
				glw.quadTex(screenleft, screenbottom, screenright, screenbottom, screenright, screentop, screenleft, screentop, rcTex);
				if (i === last && !post_draw)
					glw.setTexture(null);
			}
			fx_index = (fx_index === 0 ? 1 : 0);
			other_fx_index = (fx_index === 0 ? 1 : 0);		// will be opposite to fx_index since it was just assigned
		}
		if (post_draw)
		{
			glw.switchProgram(0);
			if (inst)
				glw.setBlend(inst.srcBlend, inst.destBlend);
			else if (layer)
				glw.setBlend(layer.srcBlend, layer.destBlend);
			else
			{
				if (!this.runtime.fullscreenScalingQuality)
				{
					glw.setSize(this.runtime.width, this.runtime.height);
					halfw = this.runtime.width / 2;
					halfh = this.runtime.height / 2;
					screenleft = 0;
					screentop = 0;
					screenright = this.runtime.width;
					screenbottom = this.runtime.height;
				}
			}
			glw.setRenderingToTexture(rendertarget);
			glw.setTexture(fx_tex[other_fx_index]);
			glw.resetModelView();
			glw.translate(-halfw, -halfh);
			glw.updateModelView();
			if (inst && active_effect_types.length === 1 && !pre_draw)
				glw.quadTex(screenleft, screentop, screenright, screentop, screenright, screenbottom, screenleft, screenbottom, rcTex);
			else
				glw.quadTex(screenleft, screenbottom, screenright, screenbottom, screenright, screentop, screenleft, screentop, rcTex);
			glw.setTexture(null);
		}
	};
	Layout.prototype.getLayerBySid = function (sid_)
	{
		var i, len;
		for (i = 0, len = this.layers.length; i < len; i++)
		{
			if (this.layers[i].sid === sid_)
				return this.layers[i];
		}
		return null;
	};
	Layout.prototype.saveToJSON = function ()
	{
		var i, len, layer, et;
		var o = {
			"sx": this.scrollX,
			"sy": this.scrollY,
			"s": this.scale,
			"a": this.angle,
			"w": this.width,
			"h": this.height,
			"fv": this.first_visit,			// added r127
			"persist": this.persist_data,
			"fx": [],
			"layers": {}
		};
		for (i = 0, len = this.effect_types.length; i < len; i++)
		{
			et = this.effect_types[i];
			o["fx"].push({"name": et.name, "active": et.active, "params": this.effect_params[et.index] });
		}
		for (i = 0, len = this.layers.length; i < len; i++)
		{
			layer = this.layers[i];
			o["layers"][layer.sid.toString()] = layer.saveToJSON();
		}
		return o;
	};
	Layout.prototype.loadFromJSON = function (o)
	{
		var i, len, fx, p, layer;
		this.scrollX = o["sx"];
		this.scrollY = o["sy"];
		this.scale = o["s"];
		this.angle = o["a"];
		this.width = o["w"];
		this.height = o["h"];
		this.persist_data = o["persist"];
		if (typeof o["fv"] !== "undefined")
			this.first_visit = o["fv"];
		var ofx = o["fx"];
		for (i = 0, len = ofx.length; i < len; i++)
		{
			fx = this.getEffectByName(ofx[i]["name"]);
			if (!fx)
				continue;		// must've gone missing
			fx.active = ofx[i]["active"];
			this.effect_params[fx.index] = ofx[i]["params"];
		}
		this.updateActiveEffects();
		var olayers = o["layers"];
		for (p in olayers)
		{
			if (olayers.hasOwnProperty(p))
			{
				layer = this.getLayerBySid(parseInt(p, 10));
				if (!layer)
					continue;		// must've gone missing
				layer.loadFromJSON(olayers[p]);
			}
		}
	};
	cr.layout = Layout;
	function Layer(layout, m)
	{
		this.layout = layout;
		this.runtime = layout.runtime;
		this.instances = [];        // running instances
		this.scale = 1.0;
		this.angle = 0;
		this.disableAngle = false;
		this.tmprect = new cr.rect(0, 0, 0, 0);
		this.tmpquad = new cr.quad();
		this.viewLeft = 0;
		this.viewRight = 0;
		this.viewTop = 0;
		this.viewBottom = 0;
		this.zindices_stale = false;
		this.name = m[0];
		this.index = m[1];
		this.sid = m[2];
		this.visible = m[3];		// initially visible
		this.background_color = m[4];
		this.transparent = m[5];
		this.parallaxX = m[6];
		this.parallaxY = m[7];
		this.opacity = m[8];
		this.forceOwnTexture = m[9];
		this.zoomRate = m[10];
		this.blend_mode = m[11];
		this.effect_fallback = m[12];
		this.compositeOp = "source-over";
		this.srcBlend = 0;
		this.destBlend = 0;
		this.render_offscreen = false;
		var im = m[13];
		var i, len;
		this.initial_instances = [];
		for (i = 0, len = im.length; i < len; i++)
		{
			var inst = im[i];
			var type = this.runtime.types_by_index[inst[1]];
;
			if (!type.default_instance)
			{
				type.default_instance = inst;
				type.default_layerindex = this.index;
			}
			this.initial_instances.push(inst);
			if (this.layout.initial_types.indexOf(type) === -1)
				this.layout.initial_types.push(type);
		}
		this.effect_types = [];
		this.active_effect_types = [];
		this.effect_params = [];
		for (i = 0, len = m[14].length; i < len; i++)
		{
			this.effect_types.push({
				id: m[14][i][0],
				name: m[14][i][1],
				shaderindex: -1,
				active: true,
				index: i
			});
			this.effect_params.push(m[14][i][2].slice(0));
		}
		this.updateActiveEffects();
		this.rcTex = new cr.rect(0, 0, 1, 1);
		this.rcTex2 = new cr.rect(0, 0, 1, 1);
	};
	Layer.prototype.updateActiveEffects = function ()
	{
		this.active_effect_types.length = 0;
		var i, len, et;
		for (i = 0, len = this.effect_types.length; i < len; i++)
		{
			et = this.effect_types[i];
			if (et.active)
				this.active_effect_types.push(et);
		}
	};
	Layer.prototype.getEffectByName = function (name_)
	{
		var i, len, et;
		for (i = 0, len = this.effect_types.length; i < len; i++)
		{
			et = this.effect_types[i];
			if (et.name === name_)
				return et;
		}
		return null;
	};
	Layer.prototype.createInitialInstances = function ()
	{
		var i, k, len, inst, initial_inst, type, keep, hasPersistBehavior;
		for (i = 0, k = 0, len = this.initial_instances.length; i < len; i++)
		{
			initial_inst = this.initial_instances[i];
			type = this.runtime.types_by_index[initial_inst[1]];
;
			hasPersistBehavior = this.runtime.typeHasPersistBehavior(type);
			keep = true;
			if (!hasPersistBehavior || this.layout.first_visit)
			{
				inst = this.runtime.createInstanceFromInit(initial_inst, this, true);
;
				created_instances.push(inst);
				if (inst.type.global)
					keep = false;
			}
			if (keep)
			{
				this.initial_instances[k] = this.initial_instances[i];
				k++;
			}
		}
		this.initial_instances.length = k;
		this.runtime.ClearDeathRow();		// flushes creation row so IIDs will be correct
		if (!this.runtime.glwrap && this.effect_types.length)	// no WebGL renderer and shaders used
			this.blend_mode = this.effect_fallback;				// use fallback blend mode
		this.compositeOp = cr.effectToCompositeOp(this.blend_mode);
		if (this.runtime.gl)
			cr.setGLBlend(this, this.blend_mode, this.runtime.gl);
	};
	Layer.prototype.updateZIndices = function ()
	{
		if (!this.zindices_stale)
			return;
		var i, len;
		for (i = 0, len = this.instances.length; i < len; i++)
		{
;
;
			this.instances[i].zindex = i;
		}
		this.zindices_stale = false;
	};
	Layer.prototype.getScale = function (include_aspect)
	{
		return this.getNormalScale() * (this.runtime.fullscreenScalingQuality || include_aspect ? this.runtime.aspect_scale : 1);
	};
	Layer.prototype.getNormalScale = function ()
	{
		return ((this.scale * this.layout.scale) - 1) * this.zoomRate + 1;
	};
	Layer.prototype.getAngle = function ()
	{
		if (this.disableAngle)
			return 0;
		return cr.clamp_angle(this.layout.angle + this.angle);
	};
	Layer.prototype.draw = function (ctx)
	{
		this.render_offscreen = (this.forceOwnTexture || this.opacity !== 1.0 || this.blend_mode !== 0);
		var layer_canvas = this.runtime.canvas;
		var layer_ctx = ctx;
		var ctx_changed = false;
		ctx.globalAlpha = 1;
		ctx.globalCompositeOperation = "source-over";
		if (this.render_offscreen)
		{
			if (!this.runtime.layer_canvas)
			{
				this.runtime.layer_canvas = document.createElement("canvas");
;
				layer_canvas = this.runtime.layer_canvas;
				layer_canvas.width = this.runtime.draw_width;
				layer_canvas.height = this.runtime.draw_height;
				this.runtime.layer_ctx = layer_canvas.getContext("2d");
;
				ctx_changed = true;
			}
			layer_canvas = this.runtime.layer_canvas;
			layer_ctx = this.runtime.layer_ctx;
			if (layer_canvas.width !== this.runtime.draw_width)
			{
				layer_canvas.width = this.runtime.draw_width;
				ctx_changed = true;
			}
			if (layer_canvas.height !== this.runtime.draw_height)
			{
				layer_canvas.height = this.runtime.draw_height;
				ctx_changed = true;
			}
			if (ctx_changed)
			{
				layer_ctx["webkitImageSmoothingEnabled"] = this.runtime.linearSampling;
				layer_ctx["mozImageSmoothingEnabled"] = this.runtime.linearSampling;
				layer_ctx["msImageSmoothingEnabled"] = this.runtime.linearSampling;
				layer_ctx["imageSmoothingEnabled"] = this.runtime.linearSampling;
			}
			if (this.transparent)
				layer_ctx.clearRect(0, 0, this.runtime.draw_width, this.runtime.draw_height);
		}
		if (!this.transparent)
		{
			layer_ctx.fillStyle = "rgb(" + this.background_color[0] + "," + this.background_color[1] + "," + this.background_color[2] + ")";
			layer_ctx.fillRect(0, 0, this.runtime.draw_width, this.runtime.draw_height);
		}
		layer_ctx.save();
		this.disableAngle = true;
		var px = this.canvasToLayer(0, 0, true, true);
		var py = this.canvasToLayer(0, 0, false, true);
		this.disableAngle = false;
		if (this.runtime.pixel_rounding)
		{
			px = (px + 0.5) | 0;
			py = (py + 0.5) | 0;
		}
		this.rotateViewport(px, py, layer_ctx);
		var myscale = this.getScale();
		layer_ctx.scale(myscale, myscale);
		layer_ctx.translate(-px, -py);
		var i, len, inst, bbox;
		for (i = 0, len = this.instances.length; i < len; i++)
		{
			inst = this.instances[i];
			if (!inst.visible || inst.width === 0 || inst.height === 0)
				continue;
			inst.update_bbox();
			bbox = inst.bbox;
			if (bbox.right < this.viewLeft || bbox.bottom < this.viewTop || bbox.left > this.viewRight || bbox.top > this.viewBottom)
				continue;
			layer_ctx.globalCompositeOperation = inst.compositeOp;
			inst.draw(layer_ctx);
		}
		layer_ctx.restore();
		if (this.render_offscreen)
		{
			ctx.globalCompositeOperation = this.compositeOp;
			ctx.globalAlpha = this.opacity;
			ctx.drawImage(layer_canvas, 0, 0);
		}
	};
	Layer.prototype.rotateViewport = function (px, py, ctx)
	{
		var myscale = this.getScale();
		this.viewLeft = px;
		this.viewTop = py;
		this.viewRight = px + (this.runtime.draw_width * (1 / myscale));
		this.viewBottom = py + (this.runtime.draw_height * (1 / myscale));
		var myAngle = this.getAngle();
		if (myAngle !== 0)
		{
			if (ctx)
			{
				ctx.translate(this.runtime.draw_width / 2, this.runtime.draw_height / 2);
				ctx.rotate(-myAngle);
				ctx.translate(this.runtime.draw_width / -2, this.runtime.draw_height / -2);
			}
			this.tmprect.set(this.viewLeft, this.viewTop, this.viewRight, this.viewBottom);
			this.tmprect.offset((this.viewLeft + this.viewRight) / -2, (this.viewTop + this.viewBottom) / -2);
			this.tmpquad.set_from_rotated_rect(this.tmprect, myAngle);
			this.tmpquad.bounding_box(this.tmprect);
			this.tmprect.offset((this.viewLeft + this.viewRight) / 2, (this.viewTop + this.viewBottom) / 2);
			this.viewLeft = this.tmprect.left;
			this.viewTop = this.tmprect.top;
			this.viewRight = this.tmprect.right;
			this.viewBottom = this.tmprect.bottom;
		}
	}
	Layer.prototype.drawGL = function (glw)
	{
		var windowWidth = this.runtime.draw_width;
		var windowHeight = this.runtime.draw_height;
		var shaderindex = 0;
		var etindex = 0;
		this.render_offscreen = (this.forceOwnTexture || this.opacity !== 1.0 || this.active_effect_types.length > 0 || this.blend_mode !== 0);
		if (this.render_offscreen)
		{
			if (!this.runtime.layer_tex)
			{
				this.runtime.layer_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling);
			}
			if (this.runtime.layer_tex.c2width !== this.runtime.draw_width || this.runtime.layer_tex.c2height !== this.runtime.draw_height)
			{
				glw.deleteTexture(this.runtime.layer_tex);
				this.runtime.layer_tex = glw.createEmptyTexture(this.runtime.draw_width, this.runtime.draw_height, this.runtime.linearSampling);
			}
			glw.setRenderingToTexture(this.runtime.layer_tex);
			if (this.transparent)
				glw.clear(0, 0, 0, 0);
		}
		if (!this.transparent)
		{
			glw.clear(this.background_color[0] / 255, this.background_color[1] / 255, this.background_color[2] / 255, 1);
		}
		this.disableAngle = true;
		var px = this.canvasToLayer(0, 0, true, true);
		var py = this.canvasToLayer(0, 0, false, true);
		this.disableAngle = false;
		if (this.runtime.pixel_rounding)
		{
			px = (px + 0.5) | 0;
			py = (py + 0.5) | 0;
		}
		this.rotateViewport(px, py, null);
		var myscale = this.getScale();
		glw.resetModelView();
		glw.scale(myscale, myscale);
		glw.rotateZ(-this.getAngle());
		glw.translate((this.viewLeft + this.viewRight) / -2, (this.viewTop + this.viewBottom) / -2);
		glw.updateModelView();
		var i, len, inst, bbox;
		for (i = 0, len = this.instances.length; i < len; i++)
		{
			inst = this.instances[i];
			if (!inst.visible || inst.width === 0 || inst.height === 0)
				continue;
			inst.update_bbox();
			bbox = inst.bbox;
			if (bbox.right < this.viewLeft || bbox.bottom < this.viewTop || bbox.left > this.viewRight || bbox.top > this.viewBottom)
				continue;
			if (inst.uses_shaders)
			{
				shaderindex = inst.active_effect_types[0].shaderindex;
				etindex = inst.active_effect_types[0].index;
				if (inst.active_effect_types.length === 1 && !glw.programUsesCrossSampling(shaderindex) &&
					!glw.programExtendsBox(shaderindex) && ((!inst.angle && !inst.layer.getAngle()) || !glw.programUsesDest(shaderindex)) &&
					inst.opacity === 1 && !inst.type.plugin.must_predraw)
				{
					glw.switchProgram(shaderindex);
					glw.setBlend(inst.srcBlend, inst.destBlend);
					if (glw.programIsAnimated(shaderindex))
						this.runtime.redraw = true;
					var destStartX = 0, destStartY = 0, destEndX = 0, destEndY = 0;
					if (glw.programUsesDest(shaderindex))
					{
						var bbox = inst.bbox;
						var screenleft = this.layerToCanvas(bbox.left, bbox.top, true, true);
						var screentop = this.layerToCanvas(bbox.left, bbox.top, false, true);
						var screenright = this.layerToCanvas(bbox.right, bbox.bottom, true, true);
						var screenbottom = this.layerToCanvas(bbox.right, bbox.bottom, false, true);
						destStartX = screenleft / windowWidth;
						destStartY = 1 - screentop / windowHeight;
						destEndX = screenright / windowWidth;
						destEndY = 1 - screenbottom / windowHeight;
					}
					glw.setProgramParameters(this.render_offscreen ? this.runtime.layer_tex : this.layout.getRenderTarget(), // backTex
											 1.0 / inst.width,			// pixelWidth
											 1.0 / inst.height,			// pixelHeight
											 destStartX, destStartY,
											 destEndX, destEndY,
											 this.getScale(),
											 this.getAngle(),
											 this.viewLeft, this.viewTop,
											 inst.effect_params[etindex]);
					inst.drawGL(glw);
				}
				else
				{
					this.layout.renderEffectChain(glw, this, inst, this.render_offscreen ? this.runtime.layer_tex : this.layout.getRenderTarget());
					glw.resetModelView();
					glw.scale(myscale, myscale);
					glw.rotateZ(-this.getAngle());
					glw.translate((this.viewLeft + this.viewRight) / -2, (this.viewTop + this.viewBottom) / -2);
					glw.updateModelView();
				}
			}
			else
			{
				glw.switchProgram(0);		// un-set any previously set shader
				glw.setBlend(inst.srcBlend, inst.destBlend);
				inst.drawGL(glw);
			}
		}
		if (this.render_offscreen)
		{
			shaderindex = this.active_effect_types.length ? this.active_effect_types[0].shaderindex : 0;
			etindex = this.active_effect_types.length ? this.active_effect_types[0].index : 0;
			if (this.active_effect_types.length === 0 || (this.active_effect_types.length === 1 &&
				!glw.programUsesCrossSampling(shaderindex) && this.opacity === 1))
			{
				if (this.active_effect_types.length === 1)
				{
					glw.switchProgram(shaderindex);
					glw.setProgramParameters(this.layout.getRenderTarget(),		// backTex
											 1.0 / this.runtime.draw_width,		// pixelWidth
											 1.0 / this.runtime.draw_height,	// pixelHeight
											 0.0, 0.0,							// destStart
											 1.0, 1.0,							// destEnd
											 this.getScale(),					// layerScale
											 this.getAngle(),
											 this.viewLeft, this.viewTop,
											 this.effect_params[etindex]);		// fx parameters
					if (glw.programIsAnimated(shaderindex))
						this.runtime.redraw = true;
				}
				else
					glw.switchProgram(0);
				glw.setRenderingToTexture(this.layout.getRenderTarget());
				glw.setOpacity(this.opacity);
				glw.setTexture(this.runtime.layer_tex);
				glw.setBlend(this.srcBlend, this.destBlend);
				glw.resetModelView();
				glw.updateModelView();
				var halfw = this.runtime.draw_width / 2;
				var halfh = this.runtime.draw_height / 2;
				glw.quad(-halfw, halfh, halfw, halfh, halfw, -halfh, -halfw, -halfh);
				glw.setTexture(null);
			}
			else
			{
				this.layout.renderEffectChain(glw, this, null, this.layout.getRenderTarget());
			}
		}
	};
	Layer.prototype.canvasToLayer = function (ptx, pty, getx, using_draw_area)
	{
		var multiplier = this.runtime.devicePixelRatio;
		if (this.runtime.isRetina)
		{
			ptx *= multiplier;
			pty *= multiplier;
		}
		var ox = this.runtime.parallax_x_origin;
		var oy = this.runtime.parallax_y_origin;
		var x = ((this.layout.scrollX - ox) * this.parallaxX) + ox;
		var y = ((this.layout.scrollY - oy) * this.parallaxY) + oy;
		var invScale = 1 / this.getScale(!using_draw_area);
		if (using_draw_area)
		{
			x -= (this.runtime.draw_width * invScale) / 2;
			y -= (this.runtime.draw_height * invScale) / 2;
		}
		else
		{
			x -= (this.runtime.width * invScale) / 2;
			y -= (this.runtime.height * invScale) / 2;
		}
		x += ptx * invScale;
		y += pty * invScale;
		var a = this.getAngle();
		if (a !== 0)
		{
			x -= this.layout.scrollX;
			y -= this.layout.scrollY;
			var cosa = Math.cos(a);
			var sina = Math.sin(a);
			var x_temp = (x * cosa) - (y * sina);
			y = (y * cosa) + (x * sina);
			x = x_temp;
			x += this.layout.scrollX;
			y += this.layout.scrollY;
		}
		return getx ? x : y;
	};
	Layer.prototype.layerToCanvas = function (ptx, pty, getx, using_draw_area)
	{
		var a = this.getAngle();
		if (a !== 0)
		{
			ptx -= this.layout.scrollX;
			pty -= this.layout.scrollY;
			var cosa = Math.cos(-a);
			var sina = Math.sin(-a);
			var x_temp = (ptx * cosa) - (pty * sina);
			pty = (pty * cosa) + (ptx * sina);
			ptx = x_temp;
			ptx += this.layout.scrollX;
			pty += this.layout.scrollY;
		}
		var ox = this.runtime.parallax_x_origin;
		var oy = this.runtime.parallax_y_origin;
		var x = ((this.layout.scrollX - ox) * this.parallaxX) + ox;
		var y = ((this.layout.scrollY - oy) * this.parallaxY) + oy;
		var invScale = 1 / this.getScale(!using_draw_area);
		if (using_draw_area)
		{
			x -= (this.runtime.draw_width * invScale) / 2;
			y -= (this.runtime.draw_height * invScale) / 2;
		}
		else
		{
			x -= (this.runtime.width * invScale) / 2;
			y -= (this.runtime.height * invScale) / 2;
		}
		x = (ptx - x) / invScale;
		y = (pty - y) / invScale;
		var multiplier = this.runtime.devicePixelRatio;
		if (this.runtime.isRetina)
		{
			x /= multiplier;
			y /= multiplier;
		}
		return getx ? x : y;
	};
	Layer.prototype.rotatePt = function (x_, y_, getx)
	{
		if (this.getAngle() === 0)
			return getx ? x_ : y_;
		var nx = this.layerToCanvas(x_, y_, true);
		var ny = this.layerToCanvas(x_, y_, false);
		this.disableAngle = true;
		var px = this.canvasToLayer(nx, ny, true);
		var py = this.canvasToLayer(nx, ny, true);
		this.disableAngle = false;
		return getx ? px : py;
	};
	Layer.prototype.saveToJSON = function ()
	{
		var i, len, et;
		var o = {
			"s": this.scale,
			"a": this.angle,
			"vl": this.viewLeft,
			"vt": this.viewTop,
			"vr": this.viewRight,
			"vb": this.viewBottom,
			"v": this.visible,
			"bc": this.background_color,
			"t": this.transparent,
			"px": this.parallaxX,
			"py": this.parallaxY,
			"o": this.opacity,
			"zr": this.zoomRate,
			"fx": [],
			"instances": []
		};
		for (i = 0, len = this.effect_types.length; i < len; i++)
		{
			et = this.effect_types[i];
			o["fx"].push({"name": et.name, "active": et.active, "params": this.effect_params[et.index] });
		}
		return o;
	};
	function sortInstanceByZIndex(a, b)
	{
		return a.zindex - b.zindex;
	};
	Layer.prototype.loadFromJSON = function (o)
	{
		var i, len, p, inst, fx;
		this.scale = o["s"];
		this.angle = o["a"];
		this.viewLeft = o["vl"];
		this.viewTop = o["vt"];
		this.viewRight = o["vr"];
		this.viewBottom = o["vb"];
		this.visible = o["v"];
		this.background_color = o["bc"];
		this.transparent = o["t"];
		this.parallaxX = o["px"];
		this.parallaxY = o["py"];
		this.opacity = o["o"];
		this.zoomRate = o["zr"];
		var ofx = o["fx"];
		for (i = 0, len = ofx.length; i < len; i++)
		{
			fx = this.getEffectByName(ofx[i]["name"]);
			if (!fx)
				continue;		// must've gone missing
			fx.active = ofx[i]["active"];
			this.effect_params[fx.index] = ofx[i]["params"];
		}
		this.updateActiveEffects();
		this.instances.sort(sortInstanceByZIndex);
		this.zindices_stale = true;
	};
	cr.layer = Layer;
}());
;
(function()
{
	var allUniqueSolModifiers = [];
	function testSolsMatch(arr1, arr2)
	{
		var i, len = arr1.length;
		switch (len) {
		case 0:
			return true;
		case 1:
			return arr1[0] === arr2[0];
		case 2:
			return arr1[0] === arr2[0] && arr1[1] === arr2[1];
		default:
			for (i = 0; i < len; i++)
			{
				if (arr1[i] !== arr2[i])
					return false;
			}
			return true;
		}
	};
	function solArraySorter(t1, t2)
	{
		return t1.index - t2.index;
	};
	function findMatchingSolModifier(arr)
	{
		var i, len, u, temp, subarr;
		if (arr.length === 2)
		{
			if (arr[0].index > arr[1].index)
			{
				temp = arr[0];
				arr[0] = arr[1];
				arr[1] = temp;
			}
		}
		else if (arr.length > 2)
			arr.sort(solArraySorter);		// so testSolsMatch compares in same order
		if (arr.length >= allUniqueSolModifiers.length)
			allUniqueSolModifiers.length = arr.length + 1;
		if (!allUniqueSolModifiers[arr.length])
			allUniqueSolModifiers[arr.length] = [];
		subarr = allUniqueSolModifiers[arr.length];
		for (i = 0, len = subarr.length; i < len; i++)
		{
			u = subarr[i];
			if (testSolsMatch(arr, u))
				return u;
		}
		subarr.push(arr);
		return arr;
	};
	function EventSheet(runtime, m)
	{
		this.runtime = runtime;
		this.triggers = {};
		this.fasttriggers = {};
        this.hasRun = false;
        this.includes = new cr.ObjectSet(); // all event sheets included by this sheet, at first-level indirection only
		this.name = m[0];
		var em = m[1];		// events model
		this.events = [];       // triggers won't make it to this array
		var i, len;
		for (i = 0, len = em.length; i < len; i++)
			this.init_event(em[i], null, this.events);
	};
    EventSheet.prototype.toString = function ()
    {
        return this.name;
    };
	EventSheet.prototype.init_event = function (m, parent, nontriggers)
	{
		switch (m[0]) {
		case 0:	// event block
		{
			var block = new cr.eventblock(this, parent, m);
			cr.seal(block);
			if (block.orblock)
			{
				nontriggers.push(block);
				var i, len;
				for (i = 0, len = block.conditions.length; i < len; i++)
				{
					if (block.conditions[i].trigger)
						this.init_trigger(block, i);
				}
			}
			else
			{
				if (block.is_trigger())
					this.init_trigger(block, 0);
				else
					nontriggers.push(block);
			}
			break;
		}
		case 1: // variable
		{
			var v = new cr.eventvariable(this, parent, m);
			cr.seal(v);
			nontriggers.push(v);
			break;
		}
        case 2:	// include
        {
            var inc = new cr.eventinclude(this, parent, m);
			cr.seal(inc);
            nontriggers.push(inc);
			break;
        }
		default:
;
		}
	};
	EventSheet.prototype.postInit = function ()
	{
		var i, len;
		for (i = 0, len = this.events.length; i < len; i++)
		{
			this.events[i].postInit(i < len - 1 && this.events[i + 1].is_else_block);
		}
	};
	EventSheet.prototype.run = function (from_include)
	{
		if (!this.runtime.resuming_breakpoint)
		{
			this.hasRun = true;
			if (!from_include)
				this.runtime.isRunningEvents = true;
		}
		var i, len;
		for (i = 0, len = this.events.length; i < len; i++)
		{
			var ev = this.events[i];
			ev.run();
				this.runtime.clearSol(ev.solModifiers);
				if (!this.runtime.deathRow.isEmpty() || this.runtime.createRow.length)
					this.runtime.ClearDeathRow();
		}
			if (!from_include)
				this.runtime.isRunningEvents = false;
	};
	EventSheet.prototype.init_trigger = function (trig, index)
	{
		if (!trig.orblock)
			this.runtime.triggers_to_postinit.push(trig);	// needs to be postInit'd later
		var i, len;
		var cnd = trig.conditions[index];
		var type_name;
		if (cnd.type)
			type_name = cnd.type.name;
		else
			type_name = "system";
		var fasttrigger = cnd.fasttrigger;
		var triggers = (fasttrigger ? this.fasttriggers : this.triggers);
		if (!triggers[type_name])
			triggers[type_name] = [];
		var obj_entry = triggers[type_name];
		var method = cnd.func;
		if (fasttrigger)
		{
			if (!cnd.parameters.length)				// no parameters
				return;
			var firstparam = cnd.parameters[0];
			if (firstparam.type !== 1 ||			// not a string param
				firstparam.expression.type !== 2)	// not a string literal node
			{
				return;
			}
			var fastevs;
			var firstvalue = firstparam.expression.value.toLowerCase();
			var i, len;
			for (i = 0, len = obj_entry.length; i < len; i++)
			{
				if (obj_entry[i].method == method)
				{
					fastevs = obj_entry[i].evs;
					if (!fastevs[firstvalue])
						fastevs[firstvalue] = [[trig, index]];
					else
						fastevs[firstvalue].push([trig, index]);
					return;
				}
			}
			fastevs = {};
			fastevs[firstvalue] = [[trig, index]];
			obj_entry.push({ method: method, evs: fastevs });
		}
		else
		{
			for (i = 0, len = obj_entry.length; i < len; i++)
			{
				if (obj_entry[i].method == method)
				{
					obj_entry[i].evs.push([trig, index]);
					return;
				}
			}
			obj_entry.push({ method: method, evs: [[trig, index]]});
		}
	};
	cr.eventsheet = EventSheet;
	function Selection(type)
	{
		this.type = type;
		this.instances = [];        // subset of picked instances
		this.else_instances = [];	// subset of unpicked instances
		this.select_all = true;
	};
	Selection.prototype.hasObjects = function ()
	{
		if (this.select_all)
			return this.type.instances.length;
		else
			return this.instances.length;
	};
	Selection.prototype.getObjects = function ()
	{
		if (this.select_all)
			return this.type.instances;
		else
			return this.instances;
	};
	/*
	Selection.prototype.ensure_picked = function (inst, skip_siblings)
	{
		var i, len;
		var orblock = inst.runtime.getCurrentEventStack().current_event.orblock;
		if (this.select_all)
		{
			this.select_all = false;
			if (orblock)
			{
				cr.shallowAssignArray(this.else_instances, inst.type.instances);
				cr.arrayFindRemove(this.else_instances, inst);
			}
			this.instances.length = 1;
			this.instances[0] = inst;
		}
		else
		{
			if (orblock)
			{
				i = this.else_instances.indexOf(inst);
				if (i !== -1)
				{
					this.instances.push(this.else_instances[i]);
					this.else_instances.splice(i, 1);
				}
			}
			else
			{
				if (this.instances.indexOf(inst) === -1)
					this.instances.push(inst);
			}
		}
		if (!skip_siblings)
		{
		}
	};
	*/
	Selection.prototype.pick_one = function (inst)
	{
		if (!inst)
			return;
		if (inst.runtime.getCurrentEventStack().current_event.orblock)
		{
			if (this.select_all)
			{
				this.instances.length = 0;
				cr.shallowAssignArray(this.else_instances, inst.type.instances);
				this.select_all = false;
			}
			var i = this.else_instances.indexOf(inst);
			if (i !== -1)
			{
				this.instances.push(this.else_instances[i]);
				this.else_instances.splice(i, 1);
			}
		}
		else
		{
			this.select_all = false;
			this.instances.length = 1;
			this.instances[0] = inst;
		}
	};
	cr.selection = Selection;
	function EventBlock(sheet, parent, m)
	{
		this.sheet = sheet;
		this.parent = parent;
		this.runtime = sheet.runtime;
		this.solModifiers = [];
		this.solModifiersIncludingParents = [];
		this.solWriterAfterCnds = false;	// block does not change SOL after running its conditions
		this.group = false;					// is group of events
		this.initially_activated = false;	// if a group, is active on startup
		this.toplevelevent = false;			// is an event block parented only by a top-level group
		this.toplevelgroup = false;			// is parented only by other groups or is top-level (i.e. not in a subevent)
		this.has_else_block = false;		// is followed by else
;
		this.conditions = [];
		this.actions = [];
		this.subevents = [];
        if (m[1])
        {
			this.group_name = m[1][1].toLowerCase();
			this.group = true;
			this.initially_activated = !!m[1][0];
			this.runtime.allGroups.push(this);
            this.runtime.activeGroups[(/*this.sheet.name + "|" + */this.group_name).toLowerCase()] = this.initially_activated;
        }
		else
		{
			this.group_name = "";
			this.group = false;
			this.initially_activated = false;
		}
		this.orblock = m[2];
		this.sid = m[4];
		if (!this.group)
			this.runtime.blocksBySid[this.sid.toString()] = this;
		var i, len;
		var cm = m[5];
		for (i = 0, len = cm.length; i < len; i++)
		{
			var cnd = new cr.condition(this, cm[i]);
			cnd.index = i;
			cr.seal(cnd);
			this.conditions.push(cnd);
			/*
			if (cnd.is_logical())
				this.is_logical = true;
			if (cnd.type && !cnd.type.plugin.singleglobal && this.cndReferences.indexOf(cnd.type) === -1)
				this.cndReferences.push(cnd.type);
			*/
			this.addSolModifier(cnd.type);
		}
		var am = m[6];
		for (i = 0, len = am.length; i < len; i++)
		{
			var act = new cr.action(this, am[i]);
			act.index = i;
			cr.seal(act);
			this.actions.push(act);
		}
		if (m.length === 8)
		{
			var em = m[7];
			for (i = 0, len = em.length; i < len; i++)
				this.sheet.init_event(em[i], this, this.subevents);
		}
		this.is_else_block = false;
		if (this.conditions.length)
		{
			this.is_else_block = (this.conditions[0].type == null && this.conditions[0].func == cr.system_object.prototype.cnds.Else);
		}
	};
	window["_c2hh_"] = "45EAD65782F39D233CF93ED60A0B709602AE44B7";
	EventBlock.prototype.postInit = function (hasElse/*, prevBlock_*/)
	{
		var i, len;
		var p = this.parent;
		if (this.group)
		{
			this.toplevelgroup = true;
			while (p)
			{
				if (!p.group)
				{
					this.toplevelgroup = false;
					break;
				}
				p = p.parent;
			}
		}
		this.toplevelevent = !this.is_trigger() && (!this.parent || (this.parent.group && this.parent.toplevelgroup));
		this.has_else_block = !!hasElse;
		this.solModifiersIncludingParents = this.solModifiers.slice(0);
		p = this.parent;
		while (p)
		{
			for (i = 0, len = p.solModifiers.length; i < len; i++)
				this.addParentSolModifier(p.solModifiers[i]);
			p = p.parent;
		}
		this.solModifiers = findMatchingSolModifier(this.solModifiers);
		this.solModifiersIncludingParents = findMatchingSolModifier(this.solModifiersIncludingParents);
		var i, len/*, s*/;
		for (i = 0, len = this.conditions.length; i < len; i++)
			this.conditions[i].postInit();
		for (i = 0, len = this.actions.length; i < len; i++)
			this.actions[i].postInit();
		for (i = 0, len = this.subevents.length; i < len; i++)
		{
			this.subevents[i].postInit(i < len - 1 && this.subevents[i + 1].is_else_block);
		}
		/*
		if (this.is_else_block && this.prev_block)
		{
			for (i = 0, len = this.prev_block.solModifiers.length; i < len; i++)
			{
				s = this.prev_block.solModifiers[i];
				if (this.solModifiers.indexOf(s) === -1)
					this.solModifiers.push(s);
			}
		}
		*/
	}
	function addSolModifierToList(type, arr)
	{
		var i, len, t;
		if (!type)
			return;
		if (arr.indexOf(type) === -1)
			arr.push(type);
		if (type.is_contained)
		{
			for (i = 0, len = type.container.length; i < len; i++)
			{
				t = type.container[i];
				if (type === t)
					continue;		// already handled
				if (arr.indexOf(t) === -1)
					arr.push(t);
			}
		}
	};
	EventBlock.prototype.addSolModifier = function (type)
	{
		addSolModifierToList(type, this.solModifiers);
	};
	EventBlock.prototype.addParentSolModifier = function (type)
	{
		addSolModifierToList(type, this.solModifiersIncludingParents);
	};
	EventBlock.prototype.setSolWriterAfterCnds = function ()
	{
		this.solWriterAfterCnds = true;
		if (this.parent)
			this.parent.setSolWriterAfterCnds();
	};
	EventBlock.prototype.is_trigger = function ()
	{
		if (!this.conditions.length)    // no conditions
			return false;
		else
			return this.conditions[0].trigger;
	};
	EventBlock.prototype.run = function ()
	{
		var i, len, any_true = false, cnd_result;
		var evinfo = this.runtime.getCurrentEventStack();
		evinfo.current_event = this;
			if (!this.is_else_block)
				evinfo.else_branch_ran = false;
		if (this.orblock)
		{
			if (this.conditions.length === 0)
				any_true = true;		// be sure to run if empty block
				evinfo.cndindex = 0
			for (len = this.conditions.length; evinfo.cndindex < len; evinfo.cndindex++)
			{
				if (this.conditions[evinfo.cndindex].trigger)		// skip triggers when running OR block
					continue;
				cnd_result = this.conditions[evinfo.cndindex].run();
				if (cnd_result)			// make sure all conditions run and run if any were true
					any_true = true;
			}
			evinfo.last_event_true = any_true;
			if (any_true)
				this.run_actions_and_subevents();
		}
		else
		{
				evinfo.cndindex = 0
			for (len = this.conditions.length; evinfo.cndindex < len; evinfo.cndindex++)
			{
				cnd_result = this.conditions[evinfo.cndindex].run();
				if (!cnd_result)    // condition failed
				{
					evinfo.last_event_true = false;
					if (this.toplevelevent && (!this.runtime.deathRow.isEmpty() || this.runtime.createRow.length))
						this.runtime.ClearDeathRow();
					return;		// bail out now
				}
			}
			evinfo.last_event_true = true;
			this.run_actions_and_subevents();
		}
		this.end_run(evinfo);
	};
	EventBlock.prototype.end_run = function (evinfo)
	{
		if (evinfo.last_event_true && this.has_else_block)
			evinfo.else_branch_ran = true;
		if (this.toplevelevent && (!this.runtime.deathRow.isEmpty() || this.runtime.createRow.length))
			this.runtime.ClearDeathRow();
	};
	EventBlock.prototype.run_orblocktrigger = function (index)
	{
		var evinfo = this.runtime.getCurrentEventStack();
		evinfo.current_event = this;
		if (this.conditions[index].run())
		{
			this.run_actions_and_subevents();
			this.runtime.getCurrentEventStack().last_event_true = true;
		}
	};
	EventBlock.prototype.run_actions_and_subevents = function ()
	{
		var evinfo = this.runtime.getCurrentEventStack();
		var len;
		for (evinfo.actindex = 0, len = this.actions.length; evinfo.actindex < len; evinfo.actindex++)
		{
			if (this.actions[evinfo.actindex].run())
				return;
		}
		this.run_subevents();
	};
	EventBlock.prototype.resume_actions_and_subevents = function ()
	{
		var evinfo = this.runtime.getCurrentEventStack();
		var len;
		for (len = this.actions.length; evinfo.actindex < len; evinfo.actindex++)
		{
			if (this.actions[evinfo.actindex].run())
				return;
		}
		this.run_subevents();
	};
	EventBlock.prototype.run_subevents = function ()
	{
		if (!this.subevents.length)
			return;
		var i, len, subev, pushpop/*, skipped_pop = false, pop_modifiers = null*/;
		var last = this.subevents.length - 1;
			this.runtime.pushEventStack(this);
		if (this.solWriterAfterCnds)
		{
			for (i = 0, len = this.subevents.length; i < len; i++)
			{
				subev = this.subevents[i];
					pushpop = (!this.toplevelgroup || (!this.group && i < last));
					if (pushpop)
						this.runtime.pushCopySol(subev.solModifiers);
				subev.run();
					if (pushpop)
						this.runtime.popSol(subev.solModifiers);
					else
						this.runtime.clearSol(subev.solModifiers);
			}
		}
		else
		{
			for (i = 0, len = this.subevents.length; i < len; i++)
			{
				this.subevents[i].run();
			}
		}
			this.runtime.popEventStack();
	};
	EventBlock.prototype.run_pretrigger = function ()
	{
		var evinfo = this.runtime.getCurrentEventStack();
		evinfo.current_event = this;
		var any_true = false;
		var i, len;
		for (evinfo.cndindex = 0, len = this.conditions.length; evinfo.cndindex < len; evinfo.cndindex++)
		{
;
			if (this.conditions[evinfo.cndindex].run())
				any_true = true;
			else if (!this.orblock)			// condition failed (let OR blocks run all conditions anyway)
				return false;               // bail out
		}
		return this.orblock ? any_true : true;
	};
	EventBlock.prototype.retrigger = function ()
	{
		this.runtime.execcount++;
		var prevcndindex = this.runtime.getCurrentEventStack().cndindex;
		var len;
		var evinfo = this.runtime.pushEventStack(this);
		if (!this.orblock)
		{
			for (evinfo.cndindex = prevcndindex + 1, len = this.conditions.length; evinfo.cndindex < len; evinfo.cndindex++)
			{
				if (!this.conditions[evinfo.cndindex].run())    // condition failed
				{
					this.runtime.popEventStack();               // moving up level of recursion
					return false;                               // bail out
				}
			}
		}
		this.run_actions_and_subevents();
		this.runtime.popEventStack();
		return true;		// ran an iteration
	};
	EventBlock.prototype.isFirstConditionOfType = function (cnd)
	{
		var cndindex = cnd.index;
		if (cndindex === 0)
			return true;
		--cndindex;
		for ( ; cndindex >= 0; --cndindex)
		{
			if (this.conditions[cndindex].type === cnd.type)
				return false;
		}
		return true;
	};
	cr.eventblock = EventBlock;
	function Condition(block, m)
	{
		this.block = block;
		this.sheet = block.sheet;
		this.runtime = block.runtime;
		this.parameters = [];
		this.results = [];
		this.extra = {};		// for plugins to stow away some custom info
		this.index = -1;
		this.func = m[1];
;
		this.trigger = (m[3] > 0);
		this.fasttrigger = (m[3] === 2);
		this.looping = m[4];
		this.inverted = m[5];
		this.isstatic = m[6];
		this.sid = m[7];
		this.runtime.cndsBySid[this.sid.toString()] = this;
		if (m[0] === -1)		// system object
		{
			this.type = null;
			this.run = this.run_system;
			this.behaviortype = null;
			this.beh_index = -1;
		}
		else
		{
			this.type = this.runtime.types_by_index[m[0]];
;
			if (this.isstatic)
				this.run = this.run_static;
			else
				this.run = this.run_object;
			if (m[2])
			{
				this.behaviortype = this.type.getBehaviorByName(m[2]);
;
				this.beh_index = this.type.getBehaviorIndexByName(m[2]);
;
			}
			else
			{
				this.behaviortype = null;
				this.beh_index = -1;
			}
			if (this.block.parent)
				this.block.parent.setSolWriterAfterCnds();
		}
		if (this.fasttrigger)
			this.run = this.run_true;
		if (m.length === 10)
		{
			var i, len;
			var em = m[9];
			for (i = 0, len = em.length; i < len; i++)
			{
				var param = new cr.parameter(this, em[i]);
				cr.seal(param);
				this.parameters.push(param);
			}
			this.results.length = em.length;
		}
	};
	Condition.prototype.postInit = function ()
	{
		var i, len;
		for (i = 0, len = this.parameters.length; i < len; i++)
			this.parameters[i].postInit();
	};
	/*
	Condition.prototype.is_logical = function ()
	{
		return !this.type || this.type.plugin.singleglobal;
	};
	*/
	Condition.prototype.run_true = function ()
	{
		return true;
	};
	Condition.prototype.run_system = function ()
	{
		var i, len;
		for (i = 0, len = this.parameters.length; i < len; i++)
			this.results[i] = this.parameters[i].get();
		return cr.xor(this.func.apply(this.runtime.system, this.results), this.inverted);
	};
	Condition.prototype.run_static = function ()
	{
		var i, len;
		for (i = 0, len = this.parameters.length; i < len; i++)
			this.results[i] = this.parameters[i].get(i);
		var ret = this.func.apply(this.behaviortype ? this.behaviortype : this.type, this.results);
		this.type.applySolToContainer();
		return ret;
	};
	Condition.prototype.run_object = function ()
	{
		var i, j, leni, lenj, ret, met, inst, s, sol2;
		var sol = this.type.getCurrentSol();
		var is_orblock = this.block.orblock && !this.trigger;		// triggers in OR blocks need to work normally
		var offset = 0;
		var is_contained = this.type.is_contained;
		if (sol.select_all) {
			sol.instances.length = 0;       // clear contents
			sol.else_instances.length = 0;
			for (i = 0, leni = this.type.instances.length; i < leni; i++)
			{
				inst = this.type.instances[i];
;
				for (j = 0, lenj = this.parameters.length; j < lenj; j++)
					this.results[j] = this.parameters[j].get(i);        // default SOL index is current object
				if (this.beh_index > -1)
				{
					if (this.type.is_family)
					{
						offset = inst.type.family_beh_map[this.type.family_index];
					}
					ret = this.func.apply(inst.behavior_insts[this.beh_index + offset], this.results);
				}
				else
					ret = this.func.apply(inst, this.results);
				met = cr.xor(ret, this.inverted);
				if (met)
					sol.instances.push(inst);
				else if (is_orblock)					// in OR blocks, keep the instances not meeting the condition for subsequent testing
					sol.else_instances.push(inst);
			}
			if (this.type.finish)
				this.type.finish(true);
			sol.select_all = false;
			this.type.applySolToContainer();
			return sol.hasObjects();
		}
		else {
			var k = 0;
			var using_else_instances = (is_orblock && !this.block.isFirstConditionOfType(this));
			var arr = (using_else_instances ? sol.else_instances : sol.instances);
			var any_true = false;
			for (i = 0, leni = arr.length; i < leni; i++)
			{
				inst = arr[i];
;
				for (j = 0, lenj = this.parameters.length; j < lenj; j++)
					this.results[j] = this.parameters[j].get(i);        // default SOL index is current object
				if (this.beh_index > -1)
				{
					if (this.type.is_family)
					{
						offset = inst.type.family_beh_map[this.type.family_index];
					}
					ret = this.func.apply(inst.behavior_insts[this.beh_index + offset], this.results);
				}
				else
					ret = this.func.apply(inst, this.results);
				if (cr.xor(ret, this.inverted))
				{
					any_true = true;
					if (using_else_instances)
					{
						sol.instances.push(inst);
						if (is_contained)
						{
							for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
							{
								s = inst.siblings[j];
								s.type.getCurrentSol().instances.push(s);
							}
						}
					}
					else
					{
						arr[k] = inst;
						if (is_contained)
						{
							for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
							{
								s = inst.siblings[j];
								s.type.getCurrentSol().instances[k] = s;
							}
						}
						k++;
					}
				}
				else
				{
					if (using_else_instances)
					{
						arr[k] = inst;
						if (is_contained)
						{
							for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
							{
								s = inst.siblings[j];
								s.type.getCurrentSol().else_instances[k] = s;
							}
						}
						k++;
					}
					else if (is_orblock)
					{
						sol.else_instances.push(inst);
						if (is_contained)
						{
							for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
							{
								s = inst.siblings[j];
								s.type.getCurrentSol().else_instances.push(s);
							}
						}
					}
				}
			}
			arr.length = k;
			if (is_contained)
			{
				for (i = 0, leni = this.type.container.length; i < leni; i++)
				{
					sol2 = this.type.container[i].getCurrentSol();
					if (using_else_instances)
						sol2.else_instances.length = k;
					else
						sol2.instances.length = k;
				}
			}
			var pick_in_finish = any_true;		// don't pick in finish() if we're only doing the logic test below
			if (using_else_instances && !any_true)
			{
				for (i = 0, leni = sol.instances.length; i < leni; i++)
				{
					inst = sol.instances[i];
					for (j = 0, lenj = this.parameters.length; j < lenj; j++)
						this.results[j] = this.parameters[j].get(i);
					if (this.beh_index > -1)
						ret = this.func.apply(inst.behavior_insts[this.beh_index], this.results);
					else
						ret = this.func.apply(inst, this.results);
					if (cr.xor(ret, this.inverted))
					{
						any_true = true;
						break;		// got our flag, don't need to test any more
					}
				}
			}
			if (this.type.finish)
				this.type.finish(pick_in_finish || is_orblock);
			return is_orblock ? any_true : sol.hasObjects();
		}
	};
	cr.condition = Condition;
	function Action(block, m)
	{
		this.block = block;
		this.sheet = block.sheet;
		this.runtime = block.runtime;
		this.parameters = [];
		this.results = [];
		this.extra = {};		// for plugins to stow away some custom info
		this.index = -1;
		this.func = m[1];
;
		if (m[0] === -1)	// system
		{
			this.type = null;
			this.run = this.run_system;
			this.behaviortype = null;
			this.beh_index = -1;
		}
		else
		{
			this.type = this.runtime.types_by_index[m[0]];
;
			this.run = this.run_object;
			if (m[2])
			{
				this.behaviortype = this.type.getBehaviorByName(m[2]);
;
				this.beh_index = this.type.getBehaviorIndexByName(m[2]);
;
			}
			else
			{
				this.behaviortype = null;
				this.beh_index = -1;
			}
		}
		this.sid = m[3];
		this.runtime.actsBySid[this.sid.toString()] = this;
		if (m.length === 6)
		{
			var i, len;
			var em = m[5];
			for (i = 0, len = em.length; i < len; i++)
			{
				var param = new cr.parameter(this, em[i]);
				cr.seal(param);
				this.parameters.push(param);
			}
			this.results.length = em.length;
		}
	};
	Action.prototype.postInit = function ()
	{
		var i, len;
		for (i = 0, len = this.parameters.length; i < len; i++)
			this.parameters[i].postInit();
	};
	Action.prototype.run_system = function ()
	{
		var i, len;
		for (i = 0, len = this.parameters.length; i < len; i++)
			this.results[i] = this.parameters[i].get();
		return this.func.apply(this.runtime.system, this.results);
	};
	Action.prototype.run_object = function ()
	{
		var instances = this.type.getCurrentSol().getObjects();
		var i, j, leni, lenj, inst;
		for (i = 0, leni = instances.length; i < leni; i++)
		{
			inst = instances[i];
			for (j = 0, lenj = this.parameters.length; j < lenj; j++)
				this.results[j] = this.parameters[j].get(i);    // pass i to use as default SOL index
			if (this.beh_index > -1)
			{
				var offset = 0;
				if (this.type.is_family)
				{
					offset = inst.type.family_beh_map[this.type.family_index];
				}
				this.func.apply(inst.behavior_insts[this.beh_index + offset], this.results);
			}
			else
				this.func.apply(inst, this.results);
		}
		return false;
	};
	cr.action = Action;
	var tempValues = [];
	var tempValuesPtr = -1;
	function Parameter(owner, m)
	{
		this.owner = owner;
		this.block = owner.block;
		this.sheet = owner.sheet;
		this.runtime = owner.runtime;
		this.type = m[0];
		this.expression = null;
		this.solindex = 0;
		this.combosel = 0;
		this.layout = null;
		this.key = 0;
		this.object = null;
		this.index = 0;
		this.varname = null;
		this.eventvar = null;
		this.fileinfo = null;
		this.subparams = null;
		this.variadicret = null;
		var i, len, param;
		switch (m[0])
		{
			case 0:		// number
			case 7:		// any
				this.expression = new cr.expNode(this, m[1]);
				this.solindex = 0;
				this.get = this.get_exp;
				break;
			case 1:		// string
				this.expression = new cr.expNode(this, m[1]);
				this.solindex = 0;
				this.get = this.get_exp_str;
				break;
			case 5:		// layer
				this.expression = new cr.expNode(this, m[1]);
				this.solindex = 0;
				this.get = this.get_layer;
				break;
			case 3:		// combo
			case 8:		// cmp
				this.combosel = m[1];
				this.get = this.get_combosel;
				break;
			case 6:		// layout
				this.layout = this.runtime.layouts[m[1]];
;
				this.get = this.get_layout;
				break;
			case 9:		// keyb
				this.key = m[1];
				this.get = this.get_key;
				break;
			case 4:		// object
				this.object = this.runtime.types_by_index[m[1]];
;
				this.get = this.get_object;
				this.block.addSolModifier(this.object);
				if (this.owner instanceof cr.action)
					this.block.setSolWriterAfterCnds();
				else if (this.block.parent)
					this.block.parent.setSolWriterAfterCnds();
				break;
			case 10:	// instvar
				this.index = m[1];
				if (owner.type.is_family)
					this.get = this.get_familyvar;
				else
					this.get = this.get_instvar;
				break;
			case 11:	// eventvar
				this.varname = m[1];
				this.eventvar = null;
				this.get = this.get_eventvar;
				break;
			case 2:		// audiofile	["name", ismusic]
			case 12:	// fileinfo		"name"
				this.fileinfo = m[1];
				this.get = this.get_audiofile;
				break;
			case 13:	// variadic
				this.get = this.get_variadic;
				this.subparams = [];
				this.variadicret = [];
				for (i = 1, len = m.length; i < len; i++)
				{
					param = new cr.parameter(this.owner, m[i]);
					cr.seal(param);
					this.subparams.push(param);
					this.variadicret.push(0);
				}
				break;
			default:
;
		}
	};
	Parameter.prototype.postInit = function ()
	{
		var i, len;
		if (this.type === 11)		// eventvar
		{
			this.eventvar = this.runtime.getEventVariableByName(this.varname, this.block.parent);
;
		}
		else if (this.type === 13)	// variadic, postInit all sub-params
		{
			for (i = 0, len = this.subparams.length; i < len; i++)
				this.subparams[i].postInit();
		}
		if (this.expression)
			this.expression.postInit();
	};
	Parameter.prototype.pushTempValue = function ()
	{
		tempValuesPtr++;
		if (tempValues.length === tempValuesPtr)
			tempValues.push(new cr.expvalue());
		return tempValues[tempValuesPtr];
	};
	Parameter.prototype.popTempValue = function ()
	{
		tempValuesPtr--;
	};
	Parameter.prototype.get_exp = function (solindex)
	{
		this.solindex = solindex || 0;   // default SOL index to use
		var temp = this.pushTempValue();
		this.expression.get(temp);
		this.popTempValue();
		return temp.data;      			// return actual JS value, not expvalue
	};
	Parameter.prototype.get_exp_str = function (solindex)
	{
		this.solindex = solindex || 0;   // default SOL index to use
		var temp = this.pushTempValue();
		this.expression.get(temp);
		this.popTempValue();
		if (cr.is_string(temp.data))
			return temp.data;
		else
			return "";
	};
	Parameter.prototype.get_object = function ()
	{
		return this.object;
	};
	Parameter.prototype.get_combosel = function ()
	{
		return this.combosel;
	};
	Parameter.prototype.get_layer = function (solindex)
	{
		this.solindex = solindex || 0;   // default SOL index to use
		var temp = this.pushTempValue();
		this.expression.get(temp);
		this.popTempValue();
		if (temp.is_number())
			return this.runtime.getLayerByNumber(temp.data);
		else
			return this.runtime.getLayerByName(temp.data);
	}
	Parameter.prototype.get_layout = function ()
	{
		return this.layout;
	};
	Parameter.prototype.get_key = function ()
	{
		return this.key;
	};
	Parameter.prototype.get_instvar = function ()
	{
		return this.index;
	};
	Parameter.prototype.get_familyvar = function (solindex)
	{
		var familytype = this.owner.type;
		var realtype = null;
		var sol = familytype.getCurrentSol();
		var objs = sol.getObjects();
		if (objs.length)
			realtype = objs[solindex % objs.length].type;
		else
		{
;
			realtype = sol.else_instances[solindex % sol.else_instances.length].type;
		}
		return this.index + realtype.family_var_map[familytype.family_index];
	};
	Parameter.prototype.get_eventvar = function ()
	{
		return this.eventvar;
	};
	Parameter.prototype.get_audiofile = function ()
	{
		return this.fileinfo;
	};
	Parameter.prototype.get_variadic = function ()
	{
		var i, len;
		for (i = 0, len = this.subparams.length; i < len; i++)
		{
			this.variadicret[i] = this.subparams[i].get();
		}
		return this.variadicret;
	};
	cr.parameter = Parameter;
	function EventVariable(sheet, parent, m)
	{
		this.sheet = sheet;
		this.parent = parent;
		this.runtime = sheet.runtime;
		this.solModifiers = [];
		this.name = m[1];
		this.vartype = m[2];
		this.initial = m[3];
		this.is_static = !!m[4];
		this.is_constant = !!m[5];
		this.sid = m[6];
		this.runtime.varsBySid[this.sid.toString()] = this;
		this.data = this.initial;	// note: also stored in event stack frame for local nonstatic nonconst vars
		if (this.parent)			// local var
		{
			if (this.is_static || this.is_constant)
				this.localIndex = -1;
			else
				this.localIndex = this.runtime.stackLocalCount++;
			this.runtime.all_local_vars.push(this);
		}
		else						// global var
		{
			this.localIndex = -1;
			this.runtime.all_global_vars.push(this);
		}
	};
	EventVariable.prototype.postInit = function ()
	{
		this.solModifiers = findMatchingSolModifier(this.solModifiers);
	};
	EventVariable.prototype.setValue = function (x)
	{
;
		var lvs = this.runtime.getCurrentLocalVarStack();
		if (!this.parent || this.is_static || !lvs)
			this.data = x;
		else	// local nonstatic variable: use event stack to keep value at this level of recursion
		{
			if (this.localIndex >= lvs.length)
				lvs.length = this.localIndex + 1;
			lvs[this.localIndex] = x;
		}
	};
	EventVariable.prototype.getValue = function ()
	{
		var lvs = this.runtime.getCurrentLocalVarStack();
		if (!this.parent || this.is_static || !lvs || this.is_constant)
			return this.data;
		else	// local nonstatic variable
		{
			if (this.localIndex >= lvs.length)
			{
;
				return this.initial;
			}
			if (typeof lvs[this.localIndex] === "undefined")
			{
;
				return this.initial;
			}
			return lvs[this.localIndex];
		}
	};
	EventVariable.prototype.run = function ()
	{
			if (this.parent && !this.is_static && !this.is_constant)
				this.setValue(this.initial);
	};
	cr.eventvariable = EventVariable;
	function EventInclude(sheet, parent, m)
	{
		this.sheet = sheet;
		this.parent = parent;
		this.runtime = sheet.runtime;
		this.solModifiers = [];
		this.include_sheet = null;		// determined in postInit
		this.include_sheet_name = m[1];
	};
	EventInclude.prototype.toString = function ()
	{
		return "include:" + this.include_sheet.toString();
	};
	EventInclude.prototype.postInit = function ()
	{
        this.include_sheet = this.runtime.eventsheets[this.include_sheet_name];
;
;
        this.sheet.includes.add(this);
		this.solModifiers = findMatchingSolModifier(this.solModifiers);
	};
	EventInclude.prototype.run = function ()
	{
			if (this.parent)
				this.runtime.pushCleanSol(this.runtime.types_by_index);
        if (!this.include_sheet.hasRun)
            this.include_sheet.run(true);			// from include
			if (this.parent)
				this.runtime.popSol(this.runtime.types_by_index);
	};
	EventInclude.prototype.isActive = function ()
	{
		var p = this.parent;
		while (p)
		{
			if (p.group)
			{
				if (!this.runtime.activeGroups[p.group_name.toLowerCase()])
					return false;
			}
			p = p.parent;
		}
		return true;
	};
	cr.eventinclude = EventInclude;
	function EventStackFrame()
	{
		this.temp_parents_arr = [];
		this.reset(null);
		cr.seal(this);
	};
	EventStackFrame.prototype.reset = function (cur_event)
	{
		this.current_event = cur_event;
		this.cndindex = 0;
		this.actindex = 0;
		this.temp_parents_arr.length = 0;
		this.last_event_true = false;
		this.else_branch_ran = false;
		this.any_true_state = false;
	};
	EventStackFrame.prototype.isModifierAfterCnds = function ()
	{
		if (this.current_event.solWriterAfterCnds)
			return true;
		if (this.cndindex < this.current_event.conditions.length - 1)
			return !!this.current_event.solModifiers.length;
		return false;
	};
	cr.eventStackFrame = EventStackFrame;
}());
(function()
{
	function ExpNode(owner_, m)
	{
		this.owner = owner_;
		this.runtime = owner_.runtime;
		this.type = m[0];
;
		this.get = [this.eval_int,
					this.eval_float,
					this.eval_string,
					this.eval_unaryminus,
					this.eval_add,
					this.eval_subtract,
					this.eval_multiply,
					this.eval_divide,
					this.eval_mod,
					this.eval_power,
					this.eval_and,
					this.eval_or,
					this.eval_equal,
					this.eval_notequal,
					this.eval_less,
					this.eval_lessequal,
					this.eval_greater,
					this.eval_greaterequal,
					this.eval_conditional,
					this.eval_system_exp,
					this.eval_object_behavior_exp,
					this.eval_instvar_exp,
					this.eval_object_behavior_exp,
					this.eval_eventvar_exp][this.type];
		var paramsModel = null;
		this.value = null;
		this.first = null;
		this.second = null;
		this.third = null;
		this.func = null;
		this.results = null;
		this.parameters = null;
		this.object_type = null;
		this.beh_index = -1;
		this.instance_expr = null;
		this.varindex = -1;
		this.behavior_type = null;
		this.varname = null;
		this.eventvar = null;
		this.return_string = false;
		switch (this.type) {
		case 0:		// int
		case 1:		// float
		case 2:		// string
			this.value = m[1];
			break;
		case 3:		// unaryminus
			this.first = new cr.expNode(owner_, m[1]);
			break;
		case 18:	// conditional
			this.first = new cr.expNode(owner_, m[1]);
			this.second = new cr.expNode(owner_, m[2]);
			this.third = new cr.expNode(owner_, m[3]);
			break;
		case 19:	// system_exp
			this.func = m[1];
;
			this.results = [];
			this.parameters = [];
			if (m.length === 3)
			{
				paramsModel = m[2];
				this.results.length = paramsModel.length + 1;	// must also fit 'ret'
			}
			else
				this.results.length = 1;      // to fit 'ret'
			break;
		case 20:	// object_exp
			this.object_type = this.runtime.types_by_index[m[1]];
;
			this.beh_index = -1;
			this.func = m[2];
			this.return_string = m[3];
			if (m[4])
				this.instance_expr = new cr.expNode(owner_, m[4]);
			else
				this.instance_expr = null;
			this.results = [];
			this.parameters = [];
			if (m.length === 6)
			{
				paramsModel = m[5];
				this.results.length = paramsModel.length + 1;
			}
			else
				this.results.length = 1;	// to fit 'ret'
			break;
		case 21:		// instvar_exp
			this.object_type = this.runtime.types_by_index[m[1]];
;
			this.return_string = m[2];
			if (m[3])
				this.instance_expr = new cr.expNode(owner_, m[3]);
			else
				this.instance_expr = null;
			this.varindex = m[4];
			break;
		case 22:		// behavior_exp
			this.object_type = this.runtime.types_by_index[m[1]];
;
			this.behavior_type = this.object_type.getBehaviorByName(m[2]);
;
			this.beh_index = this.object_type.getBehaviorIndexByName(m[2]);
			this.func = m[3];
			this.return_string = m[4];
			if (m[5])
				this.instance_expr = new cr.expNode(owner_, m[5]);
			else
				this.instance_expr = null;
			this.results = [];
			this.parameters = [];
			if (m.length === 7)
			{
				paramsModel = m[6];
				this.results.length = paramsModel.length + 1;
			}
			else
				this.results.length = 1;	// to fit 'ret'
			break;
		case 23:		// eventvar_exp
			this.varname = m[1];
			this.eventvar = null;	// assigned in postInit
			break;
		}
		if (this.type >= 4 && this.type <= 17)
		{
			this.first = new cr.expNode(owner_, m[1]);
			this.second = new cr.expNode(owner_, m[2]);
		}
		if (paramsModel)
		{
			var i, len;
			for (i = 0, len = paramsModel.length; i < len; i++)
				this.parameters.push(new cr.expNode(owner_, paramsModel[i]));
		}
		cr.seal(this);
	};
	ExpNode.prototype.postInit = function ()
	{
		if (this.type === 23)	// eventvar_exp
		{
			this.eventvar = this.owner.runtime.getEventVariableByName(this.varname, this.owner.block.parent);
;
		}
		if (this.first)
			this.first.postInit();
		if (this.second)
			this.second.postInit();
		if (this.third)
			this.third.postInit();
		if (this.instance_expr)
			this.instance_expr.postInit();
		if (this.parameters)
		{
			var i, len;
			for (i = 0, len = this.parameters.length; i < len; i++)
				this.parameters[i].postInit();
		}
	};
	ExpNode.prototype.eval_system_exp = function (ret)
	{
		this.results[0] = ret;
		var temp = this.owner.pushTempValue();
		var i, len;
		for (i = 0, len = this.parameters.length; i < len; i++)
		{
			this.parameters[i].get(temp);
			this.results[i + 1] = temp.data;   // passing actual javascript value as argument instead of expvalue
		}
		this.owner.popTempValue();
		this.func.apply(this.runtime.system, this.results);
	};
	ExpNode.prototype.eval_object_behavior_exp = function (ret)
	{
		var sol = this.object_type.getCurrentSol();
		var instances = sol.getObjects();
		if (!instances.length)
		{
			if (sol.else_instances.length)
				instances = sol.else_instances;
			else
			{
				if (this.return_string)
					ret.set_string("");
				else
					ret.set_int(0);
				return;
			}
		}
		this.results[0] = ret;
		ret.object_class = this.object_type;		// so expression can access family type if need be
		var temp = this.owner.pushTempValue();
		var i, len;
		for (i = 0, len = this.parameters.length; i < len; i++) {
			this.parameters[i].get(temp);
			this.results[i + 1] = temp.data;   // passing actual javascript value as argument instead of expvalue
		}
		var index = this.owner.solindex;
		if (this.instance_expr) {
			this.instance_expr.get(temp);
			if (temp.is_number()) {
				index = temp.data;
				instances = this.object_type.instances;    // pick from all instances, not SOL
			}
		}
		this.owner.popTempValue();
		index %= instances.length;      // wraparound
		if (index < 0)
			index += instances.length;
		var returned_val;
		var inst = instances[index];
		if (this.beh_index > -1)
		{
			var offset = 0;
			if (this.object_type.is_family)
			{
				offset = inst.type.family_beh_map[this.object_type.family_index];
			}
			returned_val = this.func.apply(inst.behavior_insts[this.beh_index + offset], this.results);
		}
		else
			returned_val = this.func.apply(inst, this.results);
;
	};
	ExpNode.prototype.eval_instvar_exp = function (ret)
	{
		var sol = this.object_type.getCurrentSol();
		var instances = sol.getObjects();
		if (!instances.length)
		{
			if (sol.else_instances.length)
				instances = sol.else_instances;
			else
			{
				if (this.return_string)
					ret.set_string("");
				else
					ret.set_int(0);
				return;
			}
		}
		var index = this.owner.solindex;
		if (this.instance_expr)
		{
			var temp = this.owner.pushTempValue();
			this.instance_expr.get(temp);
			if (temp.is_number())
			{
				index = temp.data;
				var type_instances = this.object_type.instances;
				index %= type_instances.length;     // wraparound
				if (index < 0)                      // offset
					index += type_instances.length;
				var to_ret = type_instances[index].instance_vars[this.varindex];
				if (cr.is_string(to_ret))
					ret.set_string(to_ret);
				else
					ret.set_float(to_ret);
				this.owner.popTempValue();
				return;         // done
			}
			this.owner.popTempValue();
		}
		index %= instances.length;      // wraparound
		if (index < 0)
			index += instances.length;
		var inst = instances[index];
		var offset = 0;
		if (this.object_type.is_family)
		{
			offset = inst.type.family_var_map[this.object_type.family_index];
		}
		var to_ret = inst.instance_vars[this.varindex + offset];
		if (cr.is_string(to_ret))
			ret.set_string(to_ret);
		else
			ret.set_float(to_ret);
	};
	ExpNode.prototype.eval_int = function (ret)
	{
		ret.type = cr.exptype.Integer;
		ret.data = this.value;
	};
	ExpNode.prototype.eval_float = function (ret)
	{
		ret.type = cr.exptype.Float;
		ret.data = this.value;
	};
	ExpNode.prototype.eval_string = function (ret)
	{
		ret.type = cr.exptype.String;
		ret.data = this.value;
	};
	ExpNode.prototype.eval_unaryminus = function (ret)
	{
		this.first.get(ret);                // retrieve operand
		if (ret.is_number())
			ret.data = -ret.data;
	};
	ExpNode.prototype.eval_add = function (ret)
	{
		this.first.get(ret);                // left operand
		var temp = this.owner.pushTempValue();
		this.second.get(temp);			// right operand
		if (ret.is_number() && temp.is_number())
		{
			ret.data += temp.data;          // both operands numbers: add
			if (temp.is_float())
				ret.make_float();
		}
		this.owner.popTempValue();
	};
	ExpNode.prototype.eval_subtract = function (ret)
	{
		this.first.get(ret);                // left operand
		var temp = this.owner.pushTempValue();
		this.second.get(temp);			// right operand
		if (ret.is_number() && temp.is_number())
		{
			ret.data -= temp.data;          // both operands numbers: subtract
			if (temp.is_float())
				ret.make_float();
		}
		this.owner.popTempValue();
	};
	ExpNode.prototype.eval_multiply = function (ret)
	{
		this.first.get(ret);                // left operand
		var temp = this.owner.pushTempValue();
		this.second.get(temp);			// right operand
		if (ret.is_number() && temp.is_number())
		{
			ret.data *= temp.data;          // both operands numbers: multiply
			if (temp.is_float())
				ret.make_float();
		}
		this.owner.popTempValue();
	};
	ExpNode.prototype.eval_divide = function (ret)
	{
		this.first.get(ret);                // left operand
		var temp = this.owner.pushTempValue();
		this.second.get(temp);			// right operand
		if (ret.is_number() && temp.is_number())
		{
			ret.data /= temp.data;          // both operands numbers: divide
			ret.make_float();
		}
		this.owner.popTempValue();
	};
	ExpNode.prototype.eval_mod = function (ret)
	{
		this.first.get(ret);                // left operand
		var temp = this.owner.pushTempValue();
		this.second.get(temp);			// right operand
		if (ret.is_number() && temp.is_number())
		{
			ret.data %= temp.data;          // both operands numbers: modulo
			if (temp.is_float())
				ret.make_float();
		}
		this.owner.popTempValue();
	};
	ExpNode.prototype.eval_power = function (ret)
	{
		this.first.get(ret);                // left operand
		var temp = this.owner.pushTempValue();
		this.second.get(temp);			// right operand
		if (ret.is_number() && temp.is_number())
		{
			ret.data = Math.pow(ret.data, temp.data);   // both operands numbers: raise to power
			if (temp.is_float())
				ret.make_float();
		}
		this.owner.popTempValue();
	};
	ExpNode.prototype.eval_and = function (ret)
	{
		this.first.get(ret);                // left operand
		var temp = this.owner.pushTempValue();
		this.second.get(temp);			// right operand
		if (ret.is_number())
		{
			if (temp.is_string())
			{
				ret.set_string(ret.data.toString() + temp.data);
			}
			else
			{
				if (ret.data && temp.data)
					ret.set_int(1);
				else
					ret.set_int(0);
			}
		}
		else if (ret.is_string())
		{
			if (temp.is_string())
				ret.data += temp.data;
			else
			{
				ret.data += (Math.round(temp.data * 1e10) / 1e10).toString();
			}
		}
		this.owner.popTempValue();
	};
	ExpNode.prototype.eval_or = function (ret)
	{
		this.first.get(ret);                // left operand
		var temp = this.owner.pushTempValue();
		this.second.get(temp);			// right operand
		if (ret.is_number() && temp.is_number())
		{
			if (ret.data || temp.data)
				ret.set_int(1);
			else
				ret.set_int(0);
		}
		this.owner.popTempValue();
	};
	ExpNode.prototype.eval_conditional = function (ret)
	{
		this.first.get(ret);                // condition operand
		if (ret.data)                       // is true
			this.second.get(ret);           // evaluate second operand to ret
		else
			this.third.get(ret);            // evaluate third operand to ret
	};
	ExpNode.prototype.eval_equal = function (ret)
	{
		this.first.get(ret);                // left operand
		var temp = this.owner.pushTempValue();
		this.second.get(temp);			// right operand
		ret.set_int(ret.data === temp.data ? 1 : 0);
		this.owner.popTempValue();
	};
	ExpNode.prototype.eval_notequal = function (ret)
	{
		this.first.get(ret);                // left operand
		var temp = this.owner.pushTempValue();
		this.second.get(temp);			// right operand
		ret.set_int(ret.data !== temp.data ? 1 : 0);
		this.owner.popTempValue();
	};
	ExpNode.prototype.eval_less = function (ret)
	{
		this.first.get(ret);                // left operand
		var temp = this.owner.pushTempValue();
		this.second.get(temp);			// right operand
		ret.set_int(ret.data < temp.data ? 1 : 0);
		this.owner.popTempValue();
	};
	ExpNode.prototype.eval_lessequal = function (ret)
	{
		this.first.get(ret);                // left operand
		var temp = this.owner.pushTempValue();
		this.second.get(temp);			// right operand
		ret.set_int(ret.data <= temp.data ? 1 : 0);
		this.owner.popTempValue();
	};
	ExpNode.prototype.eval_greater = function (ret)
	{
		this.first.get(ret);                // left operand
		var temp = this.owner.pushTempValue();
		this.second.get(temp);			// right operand
		ret.set_int(ret.data > temp.data ? 1 : 0);
		this.owner.popTempValue();
	};
	ExpNode.prototype.eval_greaterequal = function (ret)
	{
		this.first.get(ret);                // left operand
		var temp = this.owner.pushTempValue();
		this.second.get(temp);			// right operand
		ret.set_int(ret.data >= temp.data ? 1 : 0);
		this.owner.popTempValue();
	};
	ExpNode.prototype.eval_eventvar_exp = function (ret)
	{
		var val = this.eventvar.getValue();
		if (cr.is_number(val))
			ret.set_float(val);
		else
			ret.set_string(val);
	};
	cr.expNode = ExpNode;
	function ExpValue(type, data)
	{
		this.type = type || cr.exptype.Integer;
		this.data = data || 0;
		this.object_class = null;
;
;
;
		if (this.type == cr.exptype.Integer)
			this.data = Math.floor(this.data);
		cr.seal(this);
	};
	ExpValue.prototype.is_int = function ()
	{
		return this.type === cr.exptype.Integer;
	};
	ExpValue.prototype.is_float = function ()
	{
		return this.type === cr.exptype.Float;
	};
	ExpValue.prototype.is_number = function ()
	{
		return this.type === cr.exptype.Integer || this.type === cr.exptype.Float;
	};
	ExpValue.prototype.is_string = function ()
	{
		return this.type === cr.exptype.String;
	};
	ExpValue.prototype.make_int = function ()
	{
		if (!this.is_int())
		{
			if (this.is_float())
				this.data = Math.floor(this.data);      // truncate float
			else if (this.is_string())
				this.data = parseInt(this.data, 10);
			this.type = cr.exptype.Integer;
		}
	};
	ExpValue.prototype.make_float = function ()
	{
		if (!this.is_float())
		{
			if (this.is_string())
				this.data = parseFloat(this.data);
			this.type = cr.exptype.Float;
		}
	};
	ExpValue.prototype.make_string = function ()
	{
		if (!this.is_string())
		{
			this.data = this.data.toString();
			this.type = cr.exptype.String;
		}
	};
	ExpValue.prototype.set_int = function (val)
	{
;
		this.type = cr.exptype.Integer;
		this.data = Math.floor(val);
	};
	ExpValue.prototype.set_float = function (val)
	{
;
		this.type = cr.exptype.Float;
		this.data = val;
	};
	ExpValue.prototype.set_string = function (val)
	{
;
		this.type = cr.exptype.String;
		this.data = val;
	};
	ExpValue.prototype.set_any = function (val)
	{
		if (cr.is_number(val))
		{
			this.type = cr.exptype.Float;
			this.data = val;
		}
		else if (cr.is_string(val))
		{
			this.type = cr.exptype.String;
			this.data = val.toString();
		}
		else
		{
			this.type = cr.exptype.Integer;
			this.data = 0;
		}
	};
	cr.expvalue = ExpValue;
	cr.exptype = {
		Integer: 0,     // emulated; no native integer support in javascript
		Float: 1,
		String: 2
	};
}());
;
cr.system_object = function (runtime)
{
    this.runtime = runtime;
	this.waits = [];
};
cr.system_object.prototype.saveToJSON = function ()
{
	var o = {};
	var i, len, j, lenj, p, w, t, sobj;
	o["waits"] = [];
	var owaits = o["waits"];
	var waitobj;
	for (i = 0, len = this.waits.length; i < len; i++)
	{
		w = this.waits[i];
		waitobj = {
			"t": w.time,
			"ev": w.ev.sid,
			"sm": [],
			"sols": {}
		};
		if (w.ev.actions[w.actindex])
			waitobj["act"] = w.ev.actions[w.actindex].sid;
		for (j = 0, lenj = w.solModifiers.length; j < lenj; j++)
			waitobj["sm"].push(w.solModifiers[j].sid);
		for (p in w.sols)
		{
			if (w.sols.hasOwnProperty(p))
			{
				t = this.runtime.types_by_index[parseInt(p, 10)];
;
				sobj = {
					"sa": w.sols[p].sa,
					"insts": []
				};
				for (j = 0, lenj = w.sols[p].insts.length; j < lenj; j++)
					sobj["insts"].push(w.sols[p].insts[j].uid);
				waitobj["sols"][t.sid.toString()] = sobj;
			}
		}
		owaits.push(waitobj);
	}
	return o;
};
cr.system_object.prototype.loadFromJSON = function (o)
{
	var owaits = o["waits"];
	var i, len, j, lenj, p, w, addWait, e, aindex, t, savedsol, nusol, inst;
	this.waits.length = 0;
	for (i = 0, len = owaits.length; i < len; i++)
	{
		w = owaits[i];
		e = this.runtime.blocksBySid[w["ev"].toString()];
		if (!e)
			continue;	// event must've gone missing
		aindex = -1;
		for (j = 0, lenj = e.actions.length; j < lenj; j++)
		{
			if (e.actions[j].sid === w["act"])
			{
				aindex = j;
				break;
			}
		}
		if (aindex === -1)
			continue;	// action must've gone missing
		addWait = {};
		addWait.sols = {};
		addWait.solModifiers = [];
		addWait.deleteme = false;
		addWait.time = w["t"];
		addWait.ev = e;
		addWait.actindex = aindex;
		for (j = 0, lenj = w["sm"].length; j < lenj; j++)
		{
			t = this.runtime.getObjectTypeBySid(w["sm"][j]);
			if (t)
				addWait.solModifiers.push(t);
		}
		for (p in w["sols"])
		{
			if (w["sols"].hasOwnProperty(p))
			{
				t = this.runtime.getObjectTypeBySid(parseInt(p, 10));
				if (!t)
					continue;		// type must've been deleted
				savedsol = w["sols"][p];
				nusol = {
					sa: savedsol["sa"],
					insts: []
				};
				for (j = 0, lenj = savedsol["insts"].length; j < lenj; j++)
				{
					inst = this.runtime.getObjectByUID(savedsol["insts"][j]);
					if (inst)
						nusol.insts.push(inst);
				}
				addWait.sols[t.index.toString()] = nusol;
			}
		}
		this.waits.push(addWait);
	}
};
(function ()
{
	var sysProto = cr.system_object.prototype;
	function SysCnds() {};
    SysCnds.prototype.EveryTick = function()
    {
        return true;
    };
    SysCnds.prototype.OnLayoutStart = function()
    {
        return true;
    };
    SysCnds.prototype.OnLayoutEnd = function()
    {
        return true;
    };
    SysCnds.prototype.Compare = function(x, cmp, y)
    {
        return cr.do_cmp(x, cmp, y);
    };
    SysCnds.prototype.CompareTime = function (cmp, t)
    {
        var elapsed = this.runtime.kahanTime.sum;
        if (cmp === 0)
        {
            var cnd = this.runtime.getCurrentCondition();
            if (!cnd.extra.CompareTime_executed)
            {
                if (elapsed >= t)
                {
                    cnd.extra.CompareTime_executed = true;
                    return true;
                }
            }
            return false;
        }
        return cr.do_cmp(elapsed, cmp, t);
    };
    SysCnds.prototype.LayerVisible = function (layer)
    {
        if (!layer)
            return false;
        else
            return layer.visible;
    };
	SysCnds.prototype.LayerCmpOpacity = function (layer, cmp, opacity_)
	{
		if (!layer)
			return false;
		return cr.do_cmp(layer.opacity * 100, cmp, opacity_);
	};
    SysCnds.prototype.Repeat = function (count)
    {
		var current_frame = this.runtime.getCurrentEventStack();
        var current_event = current_frame.current_event;
		var solModifierAfterCnds = current_frame.isModifierAfterCnds();
        var current_loop = this.runtime.pushLoopStack();
        var i;
		if (solModifierAfterCnds)
		{
			for (i = 0; i < count && !current_loop.stopped; i++)
			{
				this.runtime.pushCopySol(current_event.solModifiers);
				current_loop.index = i;
				current_event.retrigger();
				this.runtime.popSol(current_event.solModifiers);
			}
		}
		else
		{
			for (i = 0; i < count && !current_loop.stopped; i++)
			{
				current_loop.index = i;
				current_event.retrigger();
			}
		}
        this.runtime.popLoopStack();
		return false;
    };
	SysCnds.prototype.While = function (count)
    {
		var current_frame = this.runtime.getCurrentEventStack();
        var current_event = current_frame.current_event;
		var solModifierAfterCnds = current_frame.isModifierAfterCnds();
        var current_loop = this.runtime.pushLoopStack();
        var i;
		if (solModifierAfterCnds)
		{
			for (i = 0; !current_loop.stopped; i++)
			{
				this.runtime.pushCopySol(current_event.solModifiers);
				current_loop.index = i;
				if (!current_event.retrigger())		// one of the other conditions returned false
					current_loop.stopped = true;	// break
				this.runtime.popSol(current_event.solModifiers);
			}
		}
		else
		{
			for (i = 0; !current_loop.stopped; i++)
			{
				current_loop.index = i;
				if (!current_event.retrigger())
					current_loop.stopped = true;
			}
		}
        this.runtime.popLoopStack();
		return false;
    };
    SysCnds.prototype.For = function (name, start, end)
    {
        var current_frame = this.runtime.getCurrentEventStack();
        var current_event = current_frame.current_event;
		var solModifierAfterCnds = current_frame.isModifierAfterCnds();
        var current_loop = this.runtime.pushLoopStack(name);
        var i;
		if (end < start)
		{
			if (solModifierAfterCnds)
			{
				for (i = start; i >= end && !current_loop.stopped; --i)  // inclusive to end
				{
					this.runtime.pushCopySol(current_event.solModifiers);
					current_loop.index = i;
					current_event.retrigger();
					this.runtime.popSol(current_event.solModifiers);
				}
			}
			else
			{
				for (i = start; i >= end && !current_loop.stopped; --i)  // inclusive to end
				{
					current_loop.index = i;
					current_event.retrigger();
				}
			}
		}
		else
		{
			if (solModifierAfterCnds)
			{
				for (i = start; i <= end && !current_loop.stopped; ++i)  // inclusive to end
				{
					this.runtime.pushCopySol(current_event.solModifiers);
					current_loop.index = i;
					current_event.retrigger();
					this.runtime.popSol(current_event.solModifiers);
				}
			}
			else
			{
				for (i = start; i <= end && !current_loop.stopped; ++i)  // inclusive to end
				{
					current_loop.index = i;
					current_event.retrigger();
				}
			}
		}
        this.runtime.popLoopStack();
		return false;
    };
	var foreach_instancestack = [];
	var foreach_instanceptr = -1;
    SysCnds.prototype.ForEach = function (obj)
    {
        var sol = obj.getCurrentSol();
		foreach_instanceptr++;
		if (foreach_instancestack.length === foreach_instanceptr)
			foreach_instancestack.push([]);
		var instances = foreach_instancestack[foreach_instanceptr];
		cr.shallowAssignArray(instances, sol.getObjects());
        var current_frame = this.runtime.getCurrentEventStack();
        var current_event = current_frame.current_event;
		var solModifierAfterCnds = current_frame.isModifierAfterCnds();
        var current_loop = this.runtime.pushLoopStack();
        var i, len, j, lenj, inst, s, sol2;
		var is_contained = obj.is_contained;
		if (solModifierAfterCnds)
		{
			for (i = 0, len = instances.length; i < len && !current_loop.stopped; i++)
			{
				this.runtime.pushCopySol(current_event.solModifiers);
				inst = instances[i];
				sol = obj.getCurrentSol();
				sol.select_all = false;
				sol.instances.length = 1;
				sol.instances[0] = inst;
				if (is_contained)
				{
					for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
					{
						s = inst.siblings[j];
						sol2 = s.type.getCurrentSol();
						sol2.select_all = false;
						sol2.instances.length = 1;
						sol2.instances[0] = s;
					}
				}
				current_loop.index = i;
				current_event.retrigger();
				this.runtime.popSol(current_event.solModifiers);
			}
		}
		else
		{
			sol.select_all = false;
			sol.instances.length = 1;
			for (i = 0, len = instances.length; i < len && !current_loop.stopped; i++)
			{
				inst = instances[i];
				sol.instances[0] = inst;
				if (is_contained)
				{
					for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
					{
						s = inst.siblings[j];
						sol2 = s.type.getCurrentSol();
						sol2.select_all = false;
						sol2.instances.length = 1;
						sol2.instances[0] = s;
					}
				}
				current_loop.index = i;
				current_event.retrigger();
			}
		}
		instances.length = 0;
        this.runtime.popLoopStack();
		foreach_instanceptr--;
		return false;
    };
	function foreach_sortinstances(a, b)
	{
		var va = a.extra.c2_foreachordered_val;
		var vb = b.extra.c2_foreachordered_val;
		if (cr.is_number(va) && cr.is_number(vb))
			return va - vb;
		else
		{
			va = "" + va;
			vb = "" + vb;
			if (va < vb)
				return -1;
			else if (va > vb)
				return 1;
			else
				return 0;
		}
	};
	SysCnds.prototype.ForEachOrdered = function (obj, exp, order)
    {
        var sol = obj.getCurrentSol();
		foreach_instanceptr++;
		if (foreach_instancestack.length === foreach_instanceptr)
			foreach_instancestack.push([]);
		var instances = foreach_instancestack[foreach_instanceptr];
		cr.shallowAssignArray(instances, sol.getObjects());
        var current_frame = this.runtime.getCurrentEventStack();
        var current_event = current_frame.current_event;
		var current_condition = this.runtime.getCurrentCondition();
		var solModifierAfterCnds = current_frame.isModifierAfterCnds();
        var current_loop = this.runtime.pushLoopStack();
		var i, len, j, lenj, inst, s, sol2;
		for (i = 0, len = instances.length; i < len; i++)
		{
			instances[i].extra.c2_foreachordered_val = current_condition.parameters[1].get(i);
		}
		instances.sort(foreach_sortinstances);
		if (order === 1)
			instances.reverse();
		var is_contained = obj.is_contained;
		if (solModifierAfterCnds)
		{
			for (i = 0, len = instances.length; i < len && !current_loop.stopped; i++)
			{
				this.runtime.pushCopySol(current_event.solModifiers);
				inst = instances[i];
				sol = obj.getCurrentSol();
				sol.select_all = false;
				sol.instances.length = 1;
				sol.instances[0] = inst;
				if (is_contained)
				{
					for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
					{
						s = inst.siblings[j];
						sol2 = s.type.getCurrentSol();
						sol2.select_all = false;
						sol2.instances.length = 1;
						sol2.instances[0] = s;
					}
				}
				current_loop.index = i;
				current_event.retrigger();
				this.runtime.popSol(current_event.solModifiers);
			}
		}
		else
		{
			sol.select_all = false;
			sol.instances.length = 1;
			for (i = 0, len = instances.length; i < len && !current_loop.stopped; i++)
			{
				inst = instances[i];
				sol.instances[0] = inst;
				if (is_contained)
				{
					for (j = 0, lenj = inst.siblings.length; j < lenj; j++)
					{
						s = inst.siblings[j];
						sol2 = s.type.getCurrentSol();
						sol2.select_all = false;
						sol2.instances.length = 1;
						sol2.instances[0] = s;
					}
				}
				current_loop.index = i;
				current_event.retrigger();
			}
		}
		instances.length = 0;
        this.runtime.popLoopStack();
		foreach_instanceptr--;
		return false;
    };
	SysCnds.prototype.PickByComparison = function (obj_, exp_, cmp_, val_)
	{
		var i, len, k, inst;
		if (!obj_)
			return;
		foreach_instanceptr++;
		if (foreach_instancestack.length === foreach_instanceptr)
			foreach_instancestack.push([]);
		var tmp_instances = foreach_instancestack[foreach_instanceptr];
		var sol = obj_.getCurrentSol();
		cr.shallowAssignArray(tmp_instances, sol.getObjects());
		if (sol.select_all)
			sol.else_instances.length = 0;
		var current_condition = this.runtime.getCurrentCondition();
		for (i = 0, k = 0, len = tmp_instances.length; i < len; i++)
		{
			inst = tmp_instances[i];
			tmp_instances[k] = inst;
			exp_ = current_condition.parameters[1].get(i);
			val_ = current_condition.parameters[3].get(i);
			if (cr.do_cmp(exp_, cmp_, val_))
			{
				k++;
			}
			else
			{
				sol.else_instances.push(inst);
			}
		}
		tmp_instances.length = k;
		sol.select_all = false;
		cr.shallowAssignArray(sol.instances, tmp_instances);
		tmp_instances.length = 0;
		foreach_instanceptr--;
		obj_.applySolToContainer();
		return !!sol.instances.length;
	};
	SysCnds.prototype.PickByEvaluate = function (obj_, exp_)
	{
		var i, len, k, inst;
		if (!obj_)
			return;
		foreach_instanceptr++;
		if (foreach_instancestack.length === foreach_instanceptr)
			foreach_instancestack.push([]);
		var tmp_instances = foreach_instancestack[foreach_instanceptr];
		var sol = obj_.getCurrentSol();
		cr.shallowAssignArray(tmp_instances, sol.getObjects());
		if (sol.select_all)
			sol.else_instances.length = 0;
		var current_condition = this.runtime.getCurrentCondition();
		for (i = 0, k = 0, len = tmp_instances.length; i < len; i++)
		{
			inst = tmp_instances[i];
			tmp_instances[k] = inst;
			exp_ = current_condition.parameters[1].get(i);
			if (exp_)
			{
				k++;
			}
			else
			{
				sol.else_instances.push(inst);
			}
		}
		tmp_instances.length = k;
		sol.select_all = false;
		cr.shallowAssignArray(sol.instances, tmp_instances);
		tmp_instances.length = 0;
		foreach_instanceptr--;
		obj_.applySolToContainer();
		return !!sol.instances.length;
	};
    SysCnds.prototype.TriggerOnce = function ()
    {
        var cndextra = this.runtime.getCurrentCondition().extra;
		if (typeof cndextra.TriggerOnce_lastTick === "undefined")
			cndextra.TriggerOnce_lastTick = -1;
        var last_tick = cndextra.TriggerOnce_lastTick;
        var cur_tick = this.runtime.tickcount;
        cndextra.TriggerOnce_lastTick = cur_tick;
        return this.runtime.layout_first_tick || last_tick !== cur_tick - 1;
    };
    SysCnds.prototype.Every = function (seconds)
    {
        var cnd = this.runtime.getCurrentCondition();
        var last_time = cnd.extra.Every_lastTime || 0;
        var cur_time = this.runtime.kahanTime.sum;
		if (typeof cnd.extra.Every_seconds === "undefined")
			cnd.extra.Every_seconds = seconds;
		var this_seconds = cnd.extra.Every_seconds;
        if (cur_time >= last_time + this_seconds)
        {
            cnd.extra.Every_lastTime = last_time + this_seconds;
			if (cur_time >= cnd.extra.Every_lastTime + 0.04)
			{
				cnd.extra.Every_lastTime = cur_time;
			}
			cnd.extra.Every_seconds = seconds;
            return true;
        }
        else
            return false;
    };
    SysCnds.prototype.PickNth = function (obj, index)
    {
        if (!obj)
            return false;
        var sol = obj.getCurrentSol();
        var instances = sol.getObjects();
		index = cr.floor(index);
        if (index < 0 || index >= instances.length)
            return false;
		var inst = instances[index];
        sol.pick_one(inst);
		obj.applySolToContainer();
        return true;
    };
	SysCnds.prototype.PickRandom = function (obj)
    {
        if (!obj)
            return false;
        var sol = obj.getCurrentSol();
        var instances = sol.getObjects();
		var index = cr.floor(Math.random() * instances.length);
        if (index >= instances.length)
            return false;
		var inst = instances[index];
        sol.pick_one(inst);
		obj.applySolToContainer();
        return true;
    };
	SysCnds.prototype.CompareVar = function (v, cmp, val)
    {
        return cr.do_cmp(v.getValue(), cmp, val);
    };
    SysCnds.prototype.IsGroupActive = function (group)
    {
        return this.runtime.activeGroups[(/*this.runtime.getCurrentCondition().sheet.name + "|" + */group).toLowerCase()];
    };
	SysCnds.prototype.IsPreview = function ()
	{
		return typeof cr_is_preview !== "undefined";
	};
	SysCnds.prototype.PickAll = function (obj)
    {
        if (!obj)
            return false;
		if (!obj.instances.length)
			return false;
        var sol = obj.getCurrentSol();
        sol.select_all = true;
		obj.applySolToContainer();
        return true;
    };
	SysCnds.prototype.IsMobile = function ()
	{
		return this.runtime.isMobile;
	};
	SysCnds.prototype.CompareBetween = function (x, a, b)
	{
		return x >= a && x <= b;
	};
	SysCnds.prototype.Else = function ()
	{
		var current_frame = this.runtime.getCurrentEventStack();
		if (current_frame.else_branch_ran)
			return false;		// another event in this else-if chain has run
		else
			return !current_frame.last_event_true;
		/*
		var current_frame = this.runtime.getCurrentEventStack();
        var current_event = current_frame.current_event;
		var prev_event = current_event.prev_block;
		if (!prev_event)
			return false;
		if (prev_event.is_logical)
			return !this.runtime.last_event_true;
		var i, len, j, lenj, s, sol, temp, inst, any_picked = false;
		for (i = 0, len = prev_event.cndReferences.length; i < len; i++)
		{
			s = prev_event.cndReferences[i];
			sol = s.getCurrentSol();
			if (sol.select_all || sol.instances.length === s.instances.length)
			{
				sol.select_all = false;
				sol.instances.length = 0;
			}
			else
			{
				if (sol.instances.length === 1 && sol.else_instances.length === 0 && s.instances.length >= 2)
				{
					inst = sol.instances[0];
					sol.instances.length = 0;
					for (j = 0, lenj = s.instances.length; j < lenj; j++)
					{
						if (s.instances[j] != inst)
							sol.instances.push(s.instances[j]);
					}
					any_picked = true;
				}
				else
				{
					temp = sol.instances;
					sol.instances = sol.else_instances;
					sol.else_instances = temp;
					any_picked = true;
				}
			}
		}
		return any_picked;
		*/
	};
	SysCnds.prototype.OnLoadFinished = function ()
	{
		return true;
	};
	SysCnds.prototype.OnCanvasSnapshot = function ()
	{
		return true;
	};
	SysCnds.prototype.EffectsSupported = function ()
	{
		return !!this.runtime.glwrap;
	};
	SysCnds.prototype.OnSaveComplete = function ()
	{
		return true;
	};
	SysCnds.prototype.OnLoadComplete = function ()
	{
		return true;
	};
	SysCnds.prototype.OnLoadFailed = function ()
	{
		return true;
	};
	SysCnds.prototype.ObjectUIDExists = function (u)
	{
		return !!this.runtime.getObjectByUID(u);
	};
	SysCnds.prototype.IsOnPlatform = function (p)
	{
		var rt = this.runtime;
		switch (p) {
		case 0:		// HTML5 website
			return !rt.isDomFree && !rt.isNodeWebkit && !rt.isPhoneGap && !rt.isCrosswalk && !rt.isWindows8App && !rt.isWindowsPhone8 && !rt.isBlackberry10 && !rt.isAmazonWebApp;
		case 1:		// iOS
			return rt.isiOS;
		case 2:		// Android
			return rt.isAndroid;
		case 3:		// Windows 8
			return rt.isWindows8App;
		case 4:		// Windows Phone 8
			return rt.isWindowsPhone8;
		case 5:		// Blackberry 10
			return rt.isBlackberry10;
		case 6:		// Tizen
			return rt.isTizen;
		case 7:		// CocoonJS
			return rt.isCocoonJs;
		case 8:		// PhoneGap
			return rt.isPhoneGap;
		case 9:	// Scirra Arcade
			return rt.isArcade;
		case 10:	// node-webkit
			return rt.isNodeWebkit;
		case 11:	// crosswalk
			return rt.isCrosswalk;
		case 12:	// amazon webapp
			return rt.isAmazonWebApp;
		default:	// should not be possible
			return false;
		}
	};
	var cacheRegex = null;
	var lastRegex = "";
	var lastFlags = "";
	function getRegex(regex_, flags_)
	{
		if (!cacheRegex || regex_ !== lastRegex || flags_ !== lastFlags)
		{
			cacheRegex = new RegExp(regex_, flags_);
			lastRegex = regex_;
			lastFlags = flags_;
		}
		cacheRegex.lastIndex = 0;		// reset
		return cacheRegex;
	};
	SysCnds.prototype.RegexTest = function (str_, regex_, flags_)
	{
		var regex = getRegex(regex_, flags_);
		return regex.test(str_);
	};
	var tmp_arr = [];
	SysCnds.prototype.PickOverlappingPoint = function (obj_, x_, y_)
	{
		if (!obj_)
            return false;
        var sol = obj_.getCurrentSol();
        var instances = sol.getObjects();
		var current_event = this.runtime.getCurrentEventStack().current_event;
		var orblock = current_event.orblock;
		var cnd = this.runtime.getCurrentCondition();
		var i, len, inst, pick;
		if (sol.select_all)
		{
			cr.shallowAssignArray(tmp_arr, instances);
			sol.else_instances.length = 0;
			sol.select_all = false;
			sol.instances.length = 0;
		}
		else
		{
			if (orblock)
			{
				cr.shallowAssignArray(tmp_arr, sol.else_instances);
				sol.else_instances.length = 0;
			}
			else
			{
				cr.shallowAssignArray(tmp_arr, instances);
				sol.instances.length = 0;
			}
		}
		for (i = 0, len = tmp_arr.length; i < len; ++i)
		{
			inst = tmp_arr[i];
			pick = cr.xor(inst.contains_pt(x_, y_), cnd.inverted);
			if (pick)
				sol.instances.push(inst);
			else
				sol.else_instances.push(inst);
		}
		obj_.applySolToContainer();
		return cr.xor(!!sol.instances.length, cnd.inverted);
	};
	sysProto.cnds = new SysCnds();
    function SysActs() {};
    SysActs.prototype.GoToLayout = function(to)
    {
		if (this.runtime.isloading)
			return;		// cannot change layout while loading on loader layout
		if (this.runtime.changelayout)
			return;		// already changing to a different layout
;
        this.runtime.changelayout = to;
    };
    SysActs.prototype.CreateObject = function (obj, layer, x, y)
    {
        if (!layer || !obj)
            return;
        var inst = this.runtime.createInstance(obj, layer, x, y);
		if (!inst)
			return;
		this.runtime.isInOnDestroy++;
		var i, len, s;
		this.runtime.trigger(Object.getPrototypeOf(obj.plugin).cnds.OnCreated, inst);
		if (inst.is_contained)
		{
			for (i = 0, len = inst.siblings.length; i < len; i++)
			{
				s = inst.siblings[i];
				this.runtime.trigger(Object.getPrototypeOf(s.type.plugin).cnds.OnCreated, s);
			}
		}
		this.runtime.isInOnDestroy--;
        var sol = obj.getCurrentSol();
        sol.select_all = false;
		sol.instances.length = 1;
		sol.instances[0] = inst;
		if (inst.is_contained)
		{
			for (i = 0, len = inst.siblings.length; i < len; i++)
			{
				s = inst.siblings[i];
				sol = s.type.getCurrentSol();
				sol.select_all = false;
				sol.instances.length = 1;
				sol.instances[0] = s;
			}
		}
    };
    SysActs.prototype.SetLayerVisible = function (layer, visible_)
    {
        if (!layer)
            return;
		if (layer.visible !== visible_)
		{
			layer.visible = visible_;
			this.runtime.redraw = true;
		}
    };
	SysActs.prototype.SetLayerOpacity = function (layer, opacity_)
	{
		if (!layer)
			return;
		opacity_ = cr.clamp(opacity_ / 100, 0, 1);
		if (layer.opacity !== opacity_)
		{
			layer.opacity = opacity_;
			this.runtime.redraw = true;
		}
	};
	SysActs.prototype.SetLayerScaleRate = function (layer, sr)
	{
		if (!layer)
			return;
		if (layer.zoomRate !== sr)
		{
			layer.zoomRate = sr;
			this.runtime.redraw = true;
		}
	};
	SysActs.prototype.SetLayoutScale = function (s)
	{
		if (!this.runtime.running_layout)
			return;
		if (this.runtime.running_layout.scale !== s)
		{
			this.runtime.running_layout.scale = s;
			this.runtime.running_layout.boundScrolling();
			this.runtime.redraw = true;
		}
	};
    SysActs.prototype.ScrollX = function(x)
    {
        this.runtime.running_layout.scrollToX(x);
    };
    SysActs.prototype.ScrollY = function(y)
    {
        this.runtime.running_layout.scrollToY(y);
    };
    SysActs.prototype.Scroll = function(x, y)
    {
        this.runtime.running_layout.scrollToX(x);
        this.runtime.running_layout.scrollToY(y);
    };
    SysActs.prototype.ScrollToObject = function(obj)
    {
        var inst = obj.getFirstPicked();
        if (inst)
        {
            this.runtime.running_layout.scrollToX(inst.x);
            this.runtime.running_layout.scrollToY(inst.y);
        }
    };
	SysActs.prototype.SetVar = function(v, x)
	{
;
		if (v.vartype === 0)
		{
			if (cr.is_number(x))
				v.setValue(x);
			else
				v.setValue(parseFloat(x));
		}
		else if (v.vartype === 1)
			v.setValue(x.toString());
	};
	SysActs.prototype.AddVar = function(v, x)
	{
;
		if (v.vartype === 0)
		{
			if (cr.is_number(x))
				v.setValue(v.getValue() + x);
			else
				v.setValue(v.getValue() + parseFloat(x));
		}
		else if (v.vartype === 1)
			v.setValue(v.getValue() + x.toString());
	};
	SysActs.prototype.SubVar = function(v, x)
	{
;
		if (v.vartype === 0)
		{
			if (cr.is_number(x))
				v.setValue(v.getValue() - x);
			else
				v.setValue(v.getValue() - parseFloat(x));
		}
	};
    SysActs.prototype.SetGroupActive = function (group, active)
    {
		var activeGroups = this.runtime.activeGroups;
		var groupkey = (/*this.runtime.getCurrentAction().sheet.name + "|" + */group).toLowerCase();
		switch (active) {
		case 0:
			activeGroups[groupkey] = false;
			break;
		case 1:
			activeGroups[groupkey] = true;
			break;
		case 2:
			activeGroups[groupkey] = !activeGroups[groupkey];
			break;
		}
    };
    SysActs.prototype.SetTimescale = function (ts_)
    {
        var ts = ts_;
        if (ts < 0)
            ts = 0;
        this.runtime.timescale = ts;
    };
    SysActs.prototype.SetObjectTimescale = function (obj, ts_)
    {
        var ts = ts_;
        if (ts < 0)
            ts = 0;
        if (!obj)
            return;
        var sol = obj.getCurrentSol();
        var instances = sol.getObjects();
        var i, len;
        for (i = 0, len = instances.length; i < len; i++)
        {
            instances[i].my_timescale = ts;
        }
    };
    SysActs.prototype.RestoreObjectTimescale = function (obj)
    {
        if (!obj)
            return false;
        var sol = obj.getCurrentSol();
        var instances = sol.getObjects();
        var i, len;
        for (i = 0, len = instances.length; i < len; i++)
        {
            instances[i].my_timescale = -1.0;
        }
    };
	var waitobjrecycle = [];
	function allocWaitObject()
	{
		var w;
		if (waitobjrecycle.length)
			w = waitobjrecycle.pop();
		else
		{
			w = {};
			w.sols = {};
			w.solModifiers = [];
		}
		w.deleteme = false;
		return w;
	};
	function freeWaitObject(w)
	{
		cr.wipe(w.sols);
		w.solModifiers.length = 0;
		waitobjrecycle.push(w);
	};
	var solstateobjects = [];
	function allocSolStateObject()
	{
		var s;
		if (solstateobjects.length)
			s = solstateobjects.pop();
		else
		{
			s = {};
			s.insts = [];
		}
		s.sa = false;
		return s;
	};
	function freeSolStateObject(s)
	{
		s.insts.length = 0;
		solstateobjects.push(s);
	};
	SysActs.prototype.Wait = function (seconds)
	{
		if (seconds < 0)
			return;
		var i, len, s, t, ss;
		var evinfo = this.runtime.getCurrentEventStack();
		var waitobj = allocWaitObject();
		waitobj.time = this.runtime.kahanTime.sum + seconds;
		waitobj.ev = evinfo.current_event;
		waitobj.actindex = evinfo.actindex + 1;	// pointing at next action
		for (i = 0, len = this.runtime.types_by_index.length; i < len; i++)
		{
			t = this.runtime.types_by_index[i];
			s = t.getCurrentSol();
			if (s.select_all && evinfo.current_event.solModifiers.indexOf(t) === -1)
				continue;
			waitobj.solModifiers.push(t);
			ss = allocSolStateObject();
			ss.sa = s.select_all;
			cr.shallowAssignArray(ss.insts, s.instances);
			waitobj.sols[i.toString()] = ss;
		}
		this.waits.push(waitobj);
		return true;
	};
	SysActs.prototype.SetLayerScale = function (layer, scale)
    {
        if (!layer)
            return;
		if (layer.scale === scale)
			return;
        layer.scale = scale;
        this.runtime.redraw = true;
    };
	SysActs.prototype.ResetGlobals = function ()
	{
		var i, len, g;
		for (i = 0, len = this.runtime.all_global_vars.length; i < len; i++)
		{
			g = this.runtime.all_global_vars[i];
			g.data = g.initial;
		}
	};
	SysActs.prototype.SetLayoutAngle = function (a)
	{
		a = cr.to_radians(a);
		a = cr.clamp_angle(a);
		if (this.runtime.running_layout)
		{
			if (this.runtime.running_layout.angle !== a)
			{
				this.runtime.running_layout.angle = a;
				this.runtime.redraw = true;
			}
		}
	};
	SysActs.prototype.SetLayerAngle = function (layer, a)
    {
        if (!layer)
            return;
		a = cr.to_radians(a);
		a = cr.clamp_angle(a);
		if (layer.angle === a)
			return;
        layer.angle = a;
        this.runtime.redraw = true;
    };
	SysActs.prototype.SetLayerParallax = function (layer, px, py)
    {
        if (!layer)
            return;
		if (layer.parallaxX === px / 100 && layer.parallaxY === py / 100)
			return;
        layer.parallaxX = px / 100;
		layer.parallaxY = py / 100;
		if (layer.parallaxX !== 1 || layer.parallaxY !== 1)
		{
			var i, len, instances = layer.instances;
			for (i = 0, len = instances.length; i < len; ++i)
			{
				instances[i].type.any_instance_parallaxed = true;
			}
		}
        this.runtime.redraw = true;
    };
	SysActs.prototype.SetLayerBackground = function (layer, c)
    {
        if (!layer)
            return;
		var r = cr.GetRValue(c);
		var g = cr.GetGValue(c);
		var b = cr.GetBValue(c);
		if (layer.background_color[0] === r && layer.background_color[1] === g && layer.background_color[2] === b)
			return;
        layer.background_color[0] = r;
		layer.background_color[1] = g;
		layer.background_color[2] = b;
        this.runtime.redraw = true;
    };
	SysActs.prototype.SetLayerTransparent = function (layer, t)
    {
        if (!layer)
            return;
		if (!!t === !!layer.transparent)
			return;
		layer.transparent = !!t;
        this.runtime.redraw = true;
    };
	SysActs.prototype.StopLoop = function ()
	{
		if (this.runtime.loop_stack_index < 0)
			return;		// no loop currently running
		this.runtime.getCurrentLoop().stopped = true;
	};
	SysActs.prototype.GoToLayoutByName = function (layoutname)
	{
		if (this.runtime.isloading)
			return;		// cannot change layout while loading on loader layout
		if (this.runtime.changelayout)
			return;		// already changing to different layout
;
		var l;
		for (l in this.runtime.layouts)
		{
			if (this.runtime.layouts.hasOwnProperty(l) && cr.equals_nocase(l, layoutname))
			{
				this.runtime.changelayout = this.runtime.layouts[l];
				return;
			}
		}
	};
	SysActs.prototype.RestartLayout = function (layoutname)
	{
		if (this.runtime.isloading)
			return;		// cannot restart loader layouts
		if (this.runtime.changelayout)
			return;		// already changing to a different layout
;
		if (!this.runtime.running_layout)
			return;
		this.runtime.changelayout = this.runtime.running_layout;
		var i, len, g;
		for (i = 0, len = this.runtime.allGroups.length; i < len; i++)
		{
			g = this.runtime.allGroups[i];
			this.runtime.activeGroups[g.group_name.toLowerCase()] = g.initially_activated;
		}
	};
	SysActs.prototype.SnapshotCanvas = function (format_, quality_)
	{
		this.runtime.snapshotCanvas = [format_ === 0 ? "image/png" : "image/jpeg", quality_ / 100];
		this.runtime.redraw = true;		// force redraw so snapshot is always taken
	};
	SysActs.prototype.SetCanvasSize = function (w, h)
	{
		if (w <= 0 || h <= 0)
			return;
		var mode = this.runtime.fullscreen_mode;
		var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || !!document["msFullscreenElement"] || document["fullScreen"] || this.runtime.isNodeFullscreen);
		if (isfullscreen && this.runtime.fullscreen_scaling > 0)
			mode = this.runtime.fullscreen_scaling;
		if (mode === 0)
		{
			this.runtime["setSize"](w, h, true);
		}
		else
		{
			this.runtime.original_width = w;
			this.runtime.original_height = h;
			this.runtime["setSize"](this.runtime.lastWindowWidth, this.runtime.lastWindowHeight, true);
		}
	};
	SysActs.prototype.SetLayoutEffectEnabled = function (enable_, effectname_)
	{
		if (!this.runtime.running_layout || !this.runtime.glwrap)
			return;
		var et = this.runtime.running_layout.getEffectByName(effectname_);
		if (!et)
			return;		// effect name not found
		var enable = (enable_ === 1);
		if (et.active == enable)
			return;		// no change
		et.active = enable;
		this.runtime.running_layout.updateActiveEffects();
		this.runtime.redraw = true;
	};
	SysActs.prototype.SetLayerEffectEnabled = function (layer, enable_, effectname_)
	{
		if (!layer || !this.runtime.glwrap)
			return;
		var et = layer.getEffectByName(effectname_);
		if (!et)
			return;		// effect name not found
		var enable = (enable_ === 1);
		if (et.active == enable)
			return;		// no change
		et.active = enable;
		layer.updateActiveEffects();
		this.runtime.redraw = true;
	};
	SysActs.prototype.SetLayoutEffectParam = function (effectname_, index_, value_)
	{
		if (!this.runtime.running_layout || !this.runtime.glwrap)
			return;
		var et = this.runtime.running_layout.getEffectByName(effectname_);
		if (!et)
			return;		// effect name not found
		var params = this.runtime.running_layout.effect_params[et.index];
		index_ = Math.floor(index_);
		if (index_ < 0 || index_ >= params.length)
			return;		// effect index out of bounds
		if (this.runtime.glwrap.getProgramParameterType(et.shaderindex, index_) === 1)
			value_ /= 100.0;
		if (params[index_] === value_)
			return;		// no change
		params[index_] = value_;
		if (et.active)
			this.runtime.redraw = true;
	};
	SysActs.prototype.SetLayerEffectParam = function (layer, effectname_, index_, value_)
	{
		if (!layer || !this.runtime.glwrap)
			return;
		var et = layer.getEffectByName(effectname_);
		if (!et)
			return;		// effect name not found
		var params = layer.effect_params[et.index];
		index_ = Math.floor(index_);
		if (index_ < 0 || index_ >= params.length)
			return;		// effect index out of bounds
		if (this.runtime.glwrap.getProgramParameterType(et.shaderindex, index_) === 1)
			value_ /= 100.0;
		if (params[index_] === value_)
			return;		// no change
		params[index_] = value_;
		if (et.active)
			this.runtime.redraw = true;
	};
	SysActs.prototype.SaveState = function (slot_)
	{
		this.runtime.saveToSlot = slot_;
	};
	SysActs.prototype.LoadState = function (slot_)
	{
		this.runtime.loadFromSlot = slot_;
	};
	SysActs.prototype.LoadStateJSON = function (jsonstr_)
	{
		this.runtime.loadFromJson = jsonstr_;
	};
	SysActs.prototype.SetHalfFramerateMode = function (set_)
	{
		this.runtime.halfFramerateMode = (set_ !== 0);
	};
	SysActs.prototype.SetFullscreenQuality = function (q)
	{
		var isfullscreen = (document["mozFullScreen"] || document["webkitIsFullScreen"] || !!document["msFullscreenElement"] || document["fullScreen"] || this.isNodeFullscreen);
		if (!isfullscreen && this.runtime.fullscreen_mode === 0)
			return;
		this.runtime.wantFullscreenScalingQuality = (q !== 0);
		this.runtime["setSize"](this.runtime.lastWindowWidth, this.runtime.lastWindowHeight, true);
	};
	sysProto.acts = new SysActs();
    function SysExps() {};
    SysExps.prototype["int"] = function(ret, x)
    {
        if (cr.is_string(x))
        {
            ret.set_int(parseInt(x, 10));
            if (isNaN(ret.data))
                ret.data = 0;
        }
        else
            ret.set_int(x);
    };
    SysExps.prototype["float"] = function(ret, x)
    {
        if (cr.is_string(x))
        {
            ret.set_float(parseFloat(x));
            if (isNaN(ret.data))
                ret.data = 0;
        }
        else
            ret.set_float(x);
    };
    SysExps.prototype.str = function(ret, x)
    {
        if (cr.is_string(x))
            ret.set_string(x);
        else
            ret.set_string(x.toString());
    };
    SysExps.prototype.len = function(ret, x)
    {
        ret.set_int(x.length || 0);
    };
    SysExps.prototype.random = function (ret, a, b)
    {
        if (b === undefined)
        {
            ret.set_float(Math.random() * a);
        }
        else
        {
            ret.set_float(Math.random() * (b - a) + a);
        }
    };
    SysExps.prototype.sqrt = function(ret, x)
    {
        ret.set_float(Math.sqrt(x));
    };
    SysExps.prototype.abs = function(ret, x)
    {
        ret.set_float(Math.abs(x));
    };
    SysExps.prototype.round = function(ret, x)
    {
        ret.set_int(Math.round(x));
    };
    SysExps.prototype.floor = function(ret, x)
    {
        ret.set_int(Math.floor(x));
    };
    SysExps.prototype.ceil = function(ret, x)
    {
        ret.set_int(Math.ceil(x));
    };
    SysExps.prototype.sin = function(ret, x)
    {
        ret.set_float(Math.sin(cr.to_radians(x)));
    };
    SysExps.prototype.cos = function(ret, x)
    {
        ret.set_float(Math.cos(cr.to_radians(x)));
    };
    SysExps.prototype.tan = function(ret, x)
    {
        ret.set_float(Math.tan(cr.to_radians(x)));
    };
    SysExps.prototype.asin = function(ret, x)
    {
        ret.set_float(cr.to_degrees(Math.asin(x)));
    };
    SysExps.prototype.acos = function(ret, x)
    {
        ret.set_float(cr.to_degrees(Math.acos(x)));
    };
    SysExps.prototype.atan = function(ret, x)
    {
        ret.set_float(cr.to_degrees(Math.atan(x)));
    };
    SysExps.prototype.exp = function(ret, x)
    {
        ret.set_float(Math.exp(x));
    };
    SysExps.prototype.ln = function(ret, x)
    {
        ret.set_float(Math.log(x));
    };
    SysExps.prototype.log10 = function(ret, x)
    {
        ret.set_float(Math.log(x) / Math.LN10);
    };
    SysExps.prototype.max = function(ret)
    {
		var max_ = arguments[1];
		var i, len;
		for (i = 2, len = arguments.length; i < len; i++)
		{
			if (max_ < arguments[i])
				max_ = arguments[i];
		}
		ret.set_float(max_);
    };
    SysExps.prototype.min = function(ret)
    {
        var min_ = arguments[1];
		var i, len;
		for (i = 2, len = arguments.length; i < len; i++)
		{
			if (min_ > arguments[i])
				min_ = arguments[i];
		}
		ret.set_float(min_);
    };
    SysExps.prototype.dt = function(ret)
    {
        ret.set_float(this.runtime.dt);
    };
    SysExps.prototype.timescale = function(ret)
    {
        ret.set_float(this.runtime.timescale);
    };
    SysExps.prototype.wallclocktime = function(ret)
    {
        ret.set_float((Date.now() - this.runtime.start_time) / 1000.0);
    };
    SysExps.prototype.time = function(ret)
    {
        ret.set_float(this.runtime.kahanTime.sum);
    };
    SysExps.prototype.tickcount = function(ret)
    {
        ret.set_int(this.runtime.tickcount);
    };
    SysExps.prototype.objectcount = function(ret)
    {
        ret.set_int(this.runtime.objectcount);
    };
    SysExps.prototype.fps = function(ret)
    {
        ret.set_int(this.runtime.fps);
    };
    SysExps.prototype.loopindex = function(ret, name_)
    {
		var loop, i, len;
        if (!this.runtime.loop_stack.length)
        {
            ret.set_int(0);
            return;
        }
        if (name_)
        {
            for (i = 0, len = this.runtime.loop_stack.length; i < len; i++)
            {
                loop = this.runtime.loop_stack[i];
                if (loop.name === name_)
                {
                    ret.set_int(loop.index);
                    return;
                }
            }
            ret.set_int(0);
        }
        else
        {
			loop = this.runtime.getCurrentLoop();
			ret.set_int(loop ? loop.index : -1);
        }
    };
    SysExps.prototype.distance = function(ret, x1, y1, x2, y2)
    {
        ret.set_float(cr.distanceTo(x1, y1, x2, y2));
    };
    SysExps.prototype.angle = function(ret, x1, y1, x2, y2)
    {
        ret.set_float(cr.to_degrees(cr.angleTo(x1, y1, x2, y2)));
    };
    SysExps.prototype.scrollx = function(ret)
    {
        ret.set_float(this.runtime.running_layout.scrollX);
    };
    SysExps.prototype.scrolly = function(ret)
    {
        ret.set_float(this.runtime.running_layout.scrollY);
    };
    SysExps.prototype.newline = function(ret)
    {
        ret.set_string("\n");
    };
    SysExps.prototype.lerp = function(ret, a, b, x)
    {
        ret.set_float(cr.lerp(a, b, x));
    };
    SysExps.prototype.windowwidth = function(ret)
    {
        ret.set_int(this.runtime.width);
    };
    SysExps.prototype.windowheight = function(ret)
    {
        ret.set_int(this.runtime.height);
    };
	SysExps.prototype.uppercase = function(ret, str)
	{
		ret.set_string(cr.is_string(str) ? str.toUpperCase() : "");
	};
	SysExps.prototype.lowercase = function(ret, str)
	{
		ret.set_string(cr.is_string(str) ? str.toLowerCase() : "");
	};
	SysExps.prototype.clamp = function(ret, x, l, u)
	{
		if (x < l)
			ret.set_float(l);
		else if (x > u)
			ret.set_float(u);
		else
			ret.set_float(x);
	};
	SysExps.prototype.layerscale = function (ret, layerparam)
	{
		var layer = this.runtime.getLayer(layerparam);
		if (!layer)
			ret.set_float(0);
		else
			ret.set_float(layer.scale);
	};
	SysExps.prototype.layeropacity = function (ret, layerparam)
	{
		var layer = this.runtime.getLayer(layerparam);
		if (!layer)
			ret.set_float(0);
		else
			ret.set_float(layer.opacity * 100);
	};
	SysExps.prototype.layerscalerate = function (ret, layerparam)
	{
		var layer = this.runtime.getLayer(layerparam);
		if (!layer)
			ret.set_float(0);
		else
			ret.set_float(layer.zoomRate);
	};
	SysExps.prototype.layerparallaxx = function (ret, layerparam)
	{
		var layer = this.runtime.getLayer(layerparam);
		if (!layer)
			ret.set_float(0);
		else
			ret.set_float(layer.parallaxX * 100);
	};
	SysExps.prototype.layerparallaxy = function (ret, layerparam)
	{
		var layer = this.runtime.getLayer(layerparam);
		if (!layer)
			ret.set_float(0);
		else
			ret.set_float(layer.parallaxY * 100);
	};
	SysExps.prototype.layoutscale = function (ret)
	{
		if (this.runtime.running_layout)
			ret.set_float(this.runtime.running_layout.scale);
		else
			ret.set_float(0);
	};
	SysExps.prototype.layoutangle = function (ret)
	{
		ret.set_float(cr.to_degrees(this.runtime.running_layout.angle));
	};
	SysExps.prototype.layerangle = function (ret, layerparam)
	{
		var layer = this.runtime.getLayer(layerparam);
		if (!layer)
			ret.set_float(0);
		else
			ret.set_float(cr.to_degrees(layer.angle));
	};
	SysExps.prototype.layoutwidth = function (ret)
	{
		ret.set_int(this.runtime.running_layout.width);
	};
	SysExps.prototype.layoutheight = function (ret)
	{
		ret.set_int(this.runtime.running_layout.height);
	};
	SysExps.prototype.find = function (ret, text, searchstr)
	{
		if (cr.is_string(text) && cr.is_string(searchstr))
			ret.set_int(text.search(new RegExp(cr.regexp_escape(searchstr), "i")));
		else
			ret.set_int(-1);
	};
	SysExps.prototype.left = function (ret, text, n)
	{
		ret.set_string(cr.is_string(text) ? text.substr(0, n) : "");
	};
	SysExps.prototype.right = function (ret, text, n)
	{
		ret.set_string(cr.is_string(text) ? text.substr(text.length - n) : "");
	};
	SysExps.prototype.mid = function (ret, text, index_, length_)
	{
		ret.set_string(cr.is_string(text) ? text.substr(index_, length_) : "");
	};
	SysExps.prototype.tokenat = function (ret, text, index_, sep)
	{
		if (cr.is_string(text) && cr.is_string(sep))
		{
			var arr = text.split(sep);
			var i = cr.floor(index_);
			if (i < 0 || i >= arr.length)
				ret.set_string("");
			else
				ret.set_string(arr[i]);
		}
		else
			ret.set_string("");
	};
	SysExps.prototype.tokencount = function (ret, text, sep)
	{
		if (cr.is_string(text) && text.length)
			ret.set_int(text.split(sep).length);
		else
			ret.set_int(0);
	};
	SysExps.prototype.replace = function (ret, text, find_, replace_)
	{
		if (cr.is_string(text) && cr.is_string(find_) && cr.is_string(replace_))
			ret.set_string(text.replace(new RegExp(cr.regexp_escape(find_), "gi"), replace_));
		else
			ret.set_string(cr.is_string(text) ? text : "");
	};
	SysExps.prototype.trim = function (ret, text)
	{
		ret.set_string(cr.is_string(text) ? text.trim() : "");
	};
	SysExps.prototype.pi = function (ret)
	{
		ret.set_float(cr.PI);
	};
	SysExps.prototype.layoutname = function (ret)
	{
		if (this.runtime.running_layout)
			ret.set_string(this.runtime.running_layout.name);
		else
			ret.set_string("");
	};
	SysExps.prototype.renderer = function (ret)
	{
		ret.set_string(this.runtime.gl ? "webgl" : "canvas2d");
	};
	SysExps.prototype.anglediff = function (ret, a, b)
	{
		ret.set_float(cr.to_degrees(cr.angleDiff(cr.to_radians(a), cr.to_radians(b))));
	};
	SysExps.prototype.choose = function (ret)
	{
		var index = cr.floor(Math.random() * (arguments.length - 1));
		ret.set_any(arguments[index + 1]);
	};
	SysExps.prototype.rgb = function (ret, r, g, b)
	{
		ret.set_int(cr.RGB(r, g, b));
	};
	SysExps.prototype.projectversion = function (ret)
	{
		ret.set_string(this.runtime.versionstr);
	};
	SysExps.prototype.anglelerp = function (ret, a, b, x)
	{
		a = cr.to_radians(a);
		b = cr.to_radians(b);
		var diff = cr.angleDiff(a, b);
		if (cr.angleClockwise(b, a))
		{
			ret.set_float(cr.to_clamped_degrees(a + diff * x));
		}
		else
		{
			ret.set_float(cr.to_clamped_degrees(a - diff * x));
		}
	};
	SysExps.prototype.anglerotate = function (ret, a, b, c)
	{
		a = cr.to_radians(a);
		b = cr.to_radians(b);
		c = cr.to_radians(c);
		ret.set_float(cr.to_clamped_degrees(cr.angleRotate(a, b, c)));
	};
	SysExps.prototype.zeropad = function (ret, n, d)
	{
		var s = (n < 0 ? "-" : "");
		if (n < 0) n = -n;
		var zeroes = d - n.toString().length;
		for (var i = 0; i < zeroes; i++)
			s += "0";
		ret.set_string(s + n.toString());
	};
	SysExps.prototype.cpuutilisation = function (ret)
	{
		ret.set_float(this.runtime.cpuutilisation / 1000);
	};
	SysExps.prototype.viewportleft = function (ret, layerparam)
	{
		var layer = this.runtime.getLayer(layerparam);
		ret.set_float(layer ? layer.viewLeft : 0);
	};
	SysExps.prototype.viewporttop = function (ret, layerparam)
	{
		var layer = this.runtime.getLayer(layerparam);
		ret.set_float(layer ? layer.viewTop : 0);
	};
	SysExps.prototype.viewportright = function (ret, layerparam)
	{
		var layer = this.runtime.getLayer(layerparam);
		ret.set_float(layer ? layer.viewRight : 0);
	};
	SysExps.prototype.viewportbottom = function (ret, layerparam)
	{
		var layer = this.runtime.getLayer(layerparam);
		ret.set_float(layer ? layer.viewBottom : 0);
	};
	SysExps.prototype.loadingprogress = function (ret)
	{
		ret.set_float(this.runtime.loadingprogress);
	};
	SysExps.prototype.unlerp = function(ret, a, b, y)
    {
        ret.set_float(cr.unlerp(a, b, y));
    };
	SysExps.prototype.canvassnapshot = function (ret)
	{
		ret.set_string(this.runtime.snapshotData);
	};
	SysExps.prototype.urlencode = function (ret, s)
	{
		ret.set_string(encodeURIComponent(s));
	};
	SysExps.prototype.urldecode = function (ret, s)
	{
		ret.set_string(decodeURIComponent(s));
	};
	SysExps.prototype.canvastolayerx = function (ret, layerparam, x, y)
	{
		var layer = this.runtime.getLayer(layerparam);
		ret.set_float(layer ? layer.canvasToLayer(x, y, true) : 0);
	};
	SysExps.prototype.canvastolayery = function (ret, layerparam, x, y)
	{
		var layer = this.runtime.getLayer(layerparam);
		ret.set_float(layer ? layer.canvasToLayer(x, y, false) : 0);
	};
	SysExps.prototype.layertocanvasx = function (ret, layerparam, x, y)
	{
		var layer = this.runtime.getLayer(layerparam);
		ret.set_float(layer ? layer.layerToCanvas(x, y, true) : 0);
	};
	SysExps.prototype.layertocanvasy = function (ret, layerparam, x, y)
	{
		var layer = this.runtime.getLayer(layerparam);
		ret.set_float(layer ? layer.layerToCanvas(x, y, false) : 0);
	};
	SysExps.prototype.savestatejson = function (ret)
	{
		ret.set_string(this.runtime.lastSaveJson);
	};
	SysExps.prototype.imagememoryusage = function (ret)
	{
		if (this.runtime.glwrap)
			ret.set_float(Math.round(100 * this.runtime.glwrap.estimateVRAM() / (1024 * 1024)) / 100);
		else
			ret.set_float(0);
	};
	SysExps.prototype.regexsearch = function (ret, str_, regex_, flags_)
	{
		var regex = getRegex(regex_, flags_);
		ret.set_int(str_ ? str_.search(regex) : -1);
	};
	SysExps.prototype.regexreplace = function (ret, str_, regex_, flags_, replace_)
	{
		var regex = getRegex(regex_, flags_);
		ret.set_string(str_ ? str_.replace(regex, replace_) : "");
	};
	var regexMatches = [];
	var lastMatchesStr = "";
	var lastMatchesRegex = "";
	var lastMatchesFlags = "";
	function updateRegexMatches(str_, regex_, flags_)
	{
		if (str_ === lastMatchesStr && regex_ === lastMatchesRegex && flags_ === lastMatchesFlags)
			return;
		var regex = getRegex(regex_, flags_);
		regexMatches = str_.match(regex);
		lastMatchesStr = str_;
		lastMatchesRegex = regex_;
		lastMatchesFlags = flags_;
	};
	SysExps.prototype.regexmatchcount = function (ret, str_, regex_, flags_)
	{
		var regex = getRegex(regex_, flags_);
		updateRegexMatches(str_, regex_, flags_);
		ret.set_int(regexMatches ? regexMatches.length : 0);
	};
	SysExps.prototype.regexmatchat = function (ret, str_, regex_, flags_, index_)
	{
		index_ = Math.floor(index_);
		var regex = getRegex(regex_, flags_);
		updateRegexMatches(str_, regex_, flags_);
		if (!regexMatches || index_ < 0 || index_ >= regexMatches.length)
			ret.set_string("");
		else
			ret.set_string(regexMatches[index_]);
	};
	SysExps.prototype.infinity = function (ret)
	{
		ret.set_float(Infinity);
	};
	SysExps.prototype.setbit = function (ret, n, b, v)
	{
		n = n | 0;
		b = b | 0;
		v = (v !== 0 ? 1 : 0);
		ret.set_int((n & ~(1 << b)) | (v << b));
	};
	SysExps.prototype.togglebit = function (ret, n, b)
	{
		n = n | 0;
		b = b | 0;
		ret.set_int(n ^ (1 << b));
	};
	SysExps.prototype.getbit = function (ret, n, b)
	{
		n = n | 0;
		b = b | 0;
		ret.set_int((n & (1 << b)) ? 1 : 0);
	};
	sysProto.exps = new SysExps();
	sysProto.runWaits = function ()
	{
		var i, j, len, w, k, s, ss;
		var evinfo = this.runtime.getCurrentEventStack();
		for (i = 0, len = this.waits.length; i < len; i++)
		{
			w = this.waits[i];
			if (w.time > this.runtime.kahanTime.sum)
				continue;
			evinfo.current_event = w.ev;
			evinfo.actindex = w.actindex;
			evinfo.cndindex = 0;
			for (k in w.sols)
			{
				if (w.sols.hasOwnProperty(k))
				{
					s = this.runtime.types_by_index[parseInt(k, 10)].getCurrentSol();
					ss = w.sols[k];
					s.select_all = ss.sa;
					cr.shallowAssignArray(s.instances, ss.insts);
					freeSolStateObject(ss);
				}
			}
			w.ev.resume_actions_and_subevents();
			this.runtime.clearSol(w.solModifiers);
			w.deleteme = true;
		}
		for (i = 0, j = 0, len = this.waits.length; i < len; i++)
		{
			w = this.waits[i];
			this.waits[j] = w;
			if (w.deleteme)
				freeWaitObject(w);
			else
				j++;
		}
		this.waits.length = j;
	};
}());
;
(function () {
	cr.add_common_aces = function (m)
	{
		var pluginProto = m[0].prototype;
		var singleglobal_ = m[1];
		var position_aces = m[3];
		var size_aces = m[4];
		var angle_aces = m[5];
		var appearance_aces = m[6];
		var zorder_aces = m[7];
		var effects_aces = m[8];
		if (!pluginProto.cnds)
			pluginProto.cnds = {};
		if (!pluginProto.acts)
			pluginProto.acts = {};
		if (!pluginProto.exps)
			pluginProto.exps = {};
		var cnds = pluginProto.cnds;
		var acts = pluginProto.acts;
		var exps = pluginProto.exps;
		if (position_aces)
		{
			cnds.CompareX = function (cmp, x)
			{
				return cr.do_cmp(this.x, cmp, x);
			};
			cnds.CompareY = function (cmp, y)
			{
				return cr.do_cmp(this.y, cmp, y);
			};
			cnds.IsOnScreen = function ()
			{
				var layer = this.layer;
				this.update_bbox();
				var bbox = this.bbox;
				return !(bbox.right < layer.viewLeft || bbox.bottom < layer.viewTop || bbox.left > layer.viewRight || bbox.top > layer.viewBottom);
			};
			cnds.IsOutsideLayout = function ()
			{
				this.update_bbox();
				var bbox = this.bbox;
				var layout = this.runtime.running_layout;
				return (bbox.right < 0 || bbox.bottom < 0 || bbox.left > layout.width || bbox.top > layout.height);
			};
			cnds.PickDistance = function (which, x, y)
			{
				var sol = this.getCurrentSol();
				var instances = sol.getObjects();
				if (!instances.length)
					return false;
				var inst = instances[0];
				var pickme = inst;
				var dist = cr.distanceTo(inst.x, inst.y, x, y);
				var i, len, d;
				for (i = 1, len = instances.length; i < len; i++)
				{
					inst = instances[i];
					d = cr.distanceTo(inst.x, inst.y, x, y);
					if ((which === 0 && d < dist) || (which === 1 && d > dist))
					{
						dist = d;
						pickme = inst;
					}
				}
				sol.pick_one(pickme);
				return true;
			};
			acts.SetX = function (x)
			{
				if (this.x !== x)
				{
					this.x = x;
					this.set_bbox_changed();
				}
			};
			acts.SetY = function (y)
			{
				if (this.y !== y)
				{
					this.y = y;
					this.set_bbox_changed();
				}
			};
			acts.SetPos = function (x, y)
			{
				if (this.x !== x || this.y !== y)
				{
					this.x = x;
					this.y = y;
					this.set_bbox_changed();
				}
			};
			acts.SetPosToObject = function (obj, imgpt)
			{
				var inst = obj.getPairedInstance(this);
				if (!inst)
					return;
				var newx, newy;
				if (inst.getImagePoint)
				{
					newx = inst.getImagePoint(imgpt, true);
					newy = inst.getImagePoint(imgpt, false);
				}
				else
				{
					newx = inst.x;
					newy = inst.y;
				}
				if (this.x !== newx || this.y !== newy)
				{
					this.x = newx;
					this.y = newy;
					this.set_bbox_changed();
				}
			};
			acts.MoveForward = function (dist)
			{
				if (dist !== 0)
				{
					this.x += Math.cos(this.angle) * dist;
					this.y += Math.sin(this.angle) * dist;
					this.set_bbox_changed();
				}
			};
			acts.MoveAtAngle = function (a, dist)
			{
				if (dist !== 0)
				{
					this.x += Math.cos(cr.to_radians(a)) * dist;
					this.y += Math.sin(cr.to_radians(a)) * dist;
					this.set_bbox_changed();
				}
			};
			exps.X = function (ret)
			{
				ret.set_float(this.x);
			};
			exps.Y = function (ret)
			{
				ret.set_float(this.y);
			};
			exps.dt = function (ret)
			{
				ret.set_float(this.runtime.getDt(this));
			};
		}
		if (size_aces)
		{
			cnds.CompareWidth = function (cmp, w)
			{
				return cr.do_cmp(this.width, cmp, w);
			};
			cnds.CompareHeight = function (cmp, h)
			{
				return cr.do_cmp(this.height, cmp, h);
			};
			acts.SetWidth = function (w)
			{
				if (this.width !== w)
				{
					this.width = w;
					this.set_bbox_changed();
				}
			};
			acts.SetHeight = function (h)
			{
				if (this.height !== h)
				{
					this.height = h;
					this.set_bbox_changed();
				}
			};
			acts.SetSize = function (w, h)
			{
				if (this.width !== w || this.height !== h)
				{
					this.width = w;
					this.height = h;
					this.set_bbox_changed();
				}
			};
			exps.Width = function (ret)
			{
				ret.set_float(this.width);
			};
			exps.Height = function (ret)
			{
				ret.set_float(this.height);
			};
			exps.BBoxLeft = function (ret)
			{
				this.update_bbox();
				ret.set_float(this.bbox.left);
			};
			exps.BBoxTop = function (ret)
			{
				this.update_bbox();
				ret.set_float(this.bbox.top);
			};
			exps.BBoxRight = function (ret)
			{
				this.update_bbox();
				ret.set_float(this.bbox.right);
			};
			exps.BBoxBottom = function (ret)
			{
				this.update_bbox();
				ret.set_float(this.bbox.bottom);
			};
		}
		if (angle_aces)
		{
			cnds.AngleWithin = function (within, a)
			{
				return cr.angleDiff(this.angle, cr.to_radians(a)) <= cr.to_radians(within);
			};
			cnds.IsClockwiseFrom = function (a)
			{
				return cr.angleClockwise(this.angle, cr.to_radians(a));
			};
			cnds.IsBetweenAngles = function (a, b)
			{
				var lower = cr.to_clamped_radians(a);
				var upper = cr.to_clamped_radians(b);
				var angle = cr.clamp_angle(this.angle);
				var obtuse = (!cr.angleClockwise(upper, lower));
				if (obtuse)
					return !(!cr.angleClockwise(angle, lower) && cr.angleClockwise(angle, upper));
				else
					return cr.angleClockwise(angle, lower) && !cr.angleClockwise(angle, upper);
			};
			acts.SetAngle = function (a)
			{
				var newangle = cr.to_radians(cr.clamp_angle_degrees(a));
				if (isNaN(newangle))
					return;
				if (this.angle !== newangle)
				{
					this.angle = newangle;
					this.set_bbox_changed();
				}
			};
			acts.RotateClockwise = function (a)
			{
				if (a !== 0 && !isNaN(a))
				{
					this.angle += cr.to_radians(a);
					this.angle = cr.clamp_angle(this.angle);
					this.set_bbox_changed();
				}
			};
			acts.RotateCounterclockwise = function (a)
			{
				if (a !== 0 && !isNaN(a))
				{
					this.angle -= cr.to_radians(a);
					this.angle = cr.clamp_angle(this.angle);
					this.set_bbox_changed();
				}
			};
			acts.RotateTowardAngle = function (amt, target)
			{
				var newangle = cr.angleRotate(this.angle, cr.to_radians(target), cr.to_radians(amt));
				if (isNaN(newangle))
					return;
				if (this.angle !== newangle)
				{
					this.angle = newangle;
					this.set_bbox_changed();
				}
			};
			acts.RotateTowardPosition = function (amt, x, y)
			{
				var dx = x - this.x;
				var dy = y - this.y;
				var target = Math.atan2(dy, dx);
				var newangle = cr.angleRotate(this.angle, target, cr.to_radians(amt));
				if (isNaN(newangle))
					return;
				if (this.angle !== newangle)
				{
					this.angle = newangle;
					this.set_bbox_changed();
				}
			};
			acts.SetTowardPosition = function (x, y)
			{
				var dx = x - this.x;
				var dy = y - this.y;
				var newangle = Math.atan2(dy, dx);
				if (isNaN(newangle))
					return;
				if (this.angle !== newangle)
				{
					this.angle = newangle;
					this.set_bbox_changed();
				}
			};
			exps.Angle = function (ret)
			{
				ret.set_float(cr.to_clamped_degrees(this.angle));
			};
		}
		if (!singleglobal_)
		{
			cnds.CompareInstanceVar = function (iv, cmp, val)
			{
				return cr.do_cmp(this.instance_vars[iv], cmp, val);
			};
			cnds.IsBoolInstanceVarSet = function (iv)
			{
				return this.instance_vars[iv];
			};
			cnds.PickInstVarHiLow = function (which, iv)
			{
				var sol = this.getCurrentSol();
				var instances = sol.getObjects();
				if (!instances.length)
					return false;
				var inst = instances[0];
				var pickme = inst;
				var val = inst.instance_vars[iv];
				var i, len, v;
				for (i = 1, len = instances.length; i < len; i++)
				{
					inst = instances[i];
					v = inst.instance_vars[iv];
					if ((which === 0 && v < val) || (which === 1 && v > val))
					{
						val = v;
						pickme = inst;
					}
				}
				sol.pick_one(pickme);
				return true;
			};
			cnds.PickByUID = function (u)
			{
				var i, len, j, inst, families, instances, sol;
				var cnd = this.runtime.getCurrentCondition();
				if (cnd.inverted)
				{
					sol = this.getCurrentSol();
					if (sol.select_all)
					{
						sol.select_all = false;
						sol.instances.length = 0;
						sol.else_instances.length = 0;
						instances = this.instances;
						for (i = 0, len = instances.length; i < len; i++)
						{
							inst = instances[i];
							if (inst.uid === u)
								sol.else_instances.push(inst);
							else
								sol.instances.push(inst);
						}
						this.applySolToContainer();
						return !!sol.instances.length;
					}
					else
					{
						for (i = 0, j = 0, len = sol.instances.length; i < len; i++)
						{
							inst = sol.instances[i];
							sol.instances[j] = inst;
							if (inst.uid === u)
							{
								sol.else_instances.push(inst);
							}
							else
								j++;
						}
						sol.instances.length = j;
						this.applySolToContainer();
						return !!sol.instances.length;
					}
				}
				else
				{
					inst = this.runtime.getObjectByUID(u);
					if (!inst)
						return false;
					sol = this.getCurrentSol();
					if (!sol.select_all && sol.instances.indexOf(inst) === -1)
						return false;		// not picked
					if (this.is_family)
					{
						families = inst.type.families;
						for (i = 0, len = families.length; i < len; i++)
						{
							if (families[i] === this)
							{
								sol.pick_one(inst);
								this.applySolToContainer();
								return true;
							}
						}
					}
					else if (inst.type === this)
					{
						sol.pick_one(inst);
						this.applySolToContainer();
						return true;
					}
					return false;
				}
			};
			cnds.OnCreated = function ()
			{
				return true;
			};
			cnds.OnDestroyed = function ()
			{
				return true;
			};
			acts.SetInstanceVar = function (iv, val)
			{
				var myinstvars = this.instance_vars;
				if (cr.is_number(myinstvars[iv]))
				{
					if (cr.is_number(val))
						myinstvars[iv] = val;
					else
						myinstvars[iv] = parseFloat(val);
				}
				else if (cr.is_string(myinstvars[iv]))
				{
					if (cr.is_string(val))
						myinstvars[iv] = val;
					else
						myinstvars[iv] = val.toString();
				}
				else
;
			};
			acts.AddInstanceVar = function (iv, val)
			{
				var myinstvars = this.instance_vars;
				if (cr.is_number(myinstvars[iv]))
				{
					if (cr.is_number(val))
						myinstvars[iv] += val;
					else
						myinstvars[iv] += parseFloat(val);
				}
				else if (cr.is_string(myinstvars[iv]))
				{
					if (cr.is_string(val))
						myinstvars[iv] += val;
					else
						myinstvars[iv] += val.toString();
				}
				else
;
			};
			acts.SubInstanceVar = function (iv, val)
			{
				var myinstvars = this.instance_vars;
				if (cr.is_number(myinstvars[iv]))
				{
					if (cr.is_number(val))
						myinstvars[iv] -= val;
					else
						myinstvars[iv] -= parseFloat(val);
				}
				else
;
			};
			acts.SetBoolInstanceVar = function (iv, val)
			{
				this.instance_vars[iv] = val ? 1 : 0;
			};
			acts.ToggleBoolInstanceVar = function (iv)
			{
				this.instance_vars[iv] = 1 - this.instance_vars[iv];
			};
			acts.Destroy = function ()
			{
				this.runtime.DestroyInstance(this);
			};
			if (!acts.LoadFromJsonString)
			{
				acts.LoadFromJsonString = function (str_)
				{
					var o, i, len, binst;
					try {
						o = JSON.parse(str_);
					}
					catch (e) {
						return;
					}
					this.runtime.loadInstanceFromJSON(this, o, true);
					if (this.afterLoad)
						this.afterLoad();
					if (this.behavior_insts)
					{
						for (i = 0, len = this.behavior_insts.length; i < len; ++i)
						{
							binst = this.behavior_insts[i];
							if (binst.afterLoad)
								binst.afterLoad();
						}
					}
				};
			}
			exps.Count = function (ret)
			{
				var count = ret.object_class.instances.length;
				var i, len, inst;
				for (i = 0, len = this.runtime.createRow.length; i < len; i++)
				{
					inst = this.runtime.createRow[i];
					if (ret.object_class.is_family)
					{
						if (inst.type.families.indexOf(ret.object_class) >= 0)
							count++;
					}
					else
					{
						if (inst.type === ret.object_class)
							count++;
					}
				}
				ret.set_int(count);
			};
			exps.PickedCount = function (ret)
			{
				ret.set_int(ret.object_class.getCurrentSol().getObjects().length);
			};
			exps.UID = function (ret)
			{
				ret.set_int(this.uid);
			};
			exps.IID = function (ret)
			{
				ret.set_int(this.get_iid());
			};
			if (!exps.AsJSON)
			{
				exps.AsJSON = function (ret)
				{
					ret.set_string(JSON.stringify(this.runtime.saveInstanceToJSON(this, true)));
				};
			}
		}
		if (appearance_aces)
		{
			cnds.IsVisible = function ()
			{
				return this.visible;
			};
			acts.SetVisible = function (v)
			{
				if (!v !== !this.visible)
				{
					this.visible = v;
					this.runtime.redraw = true;
				}
			};
			cnds.CompareOpacity = function (cmp, x)
			{
				return cr.do_cmp(cr.round6dp(this.opacity * 100), cmp, x);
			};
			acts.SetOpacity = function (x)
			{
				var new_opacity = x / 100.0;
				if (new_opacity < 0)
					new_opacity = 0;
				else if (new_opacity > 1)
					new_opacity = 1;
				if (new_opacity !== this.opacity)
				{
					this.opacity = new_opacity;
					this.runtime.redraw = true;
				}
			};
			exps.Opacity = function (ret)
			{
				ret.set_float(cr.round6dp(this.opacity * 100.0));
			};
		}
		if (zorder_aces)
		{
			cnds.IsOnLayer = function (layer_)
			{
				if (!layer_)
					return false;
				return this.layer === layer_;
			};
			cnds.PickTopBottom = function (which_)
			{
				var sol = this.getCurrentSol();
				var instances = sol.getObjects();
				if (!instances.length)
					return false;
				var inst = instances[0];
				var pickme = inst;
				var i, len;
				for (i = 1, len = instances.length; i < len; i++)
				{
					inst = instances[i];
					if (which_ === 0)
					{
						if (inst.layer.index > pickme.layer.index || (inst.layer.index === pickme.layer.index && inst.get_zindex() > pickme.get_zindex()))
						{
							pickme = inst;
						}
					}
					else
					{
						if (inst.layer.index < pickme.layer.index || (inst.layer.index === pickme.layer.index && inst.get_zindex() < pickme.get_zindex()))
						{
							pickme = inst;
						}
					}
				}
				sol.pick_one(pickme);
				return true;
			};
			acts.MoveToTop = function ()
			{
				var zindex = this.get_zindex();
				if (zindex === this.layer.instances.length - 1)
					return;
				cr.arrayRemove(this.layer.instances, zindex);
				this.layer.instances.push(this);
				this.runtime.redraw = true;
				this.layer.zindices_stale = true;
			};
			acts.MoveToBottom = function ()
			{
				var zindex = this.get_zindex();
				if (zindex === 0)
					return;
				cr.arrayRemove(this.layer.instances, zindex);
				this.layer.instances.unshift(this);
				this.runtime.redraw = true;
				this.layer.zindices_stale = true;
			};
			acts.MoveToLayer = function (layerMove)
			{
				if (!layerMove || layerMove == this.layer)
					return;
				cr.arrayRemove(this.layer.instances, this.get_zindex());
				this.layer.zindices_stale = true;
				this.layer = layerMove;
				this.zindex = layerMove.instances.length;
				layerMove.instances.push(this);
				this.runtime.redraw = true;
			};
			acts.ZMoveToObject = function (where_, obj_)
			{
				var isafter = (where_ === 0);
				if (!obj_)
					return;
				var other = obj_.getFirstPicked(this);
				if (!other || other.uid === this.uid)
					return;
				if (this.layer.index !== other.layer.index)
				{
					cr.arrayRemove(this.layer.instances, this.get_zindex());
					this.layer.zindices_stale = true;
					this.layer = other.layer;
					this.zindex = other.layer.instances.length;
					other.layer.instances.push(this);
				}
				var myZ = this.get_zindex();
				var insertZ = other.get_zindex();
				cr.arrayRemove(this.layer.instances, myZ);
				if (myZ < insertZ)
					insertZ--;
				if (isafter)
					insertZ++;
				if (insertZ === this.layer.instances.length)
					this.layer.instances.push(this);
				else
					this.layer.instances.splice(insertZ, 0, this);
				this.layer.zindices_stale = true;
				this.runtime.redraw = true;
			};
			exps.LayerNumber = function (ret)
			{
				ret.set_int(this.layer.number);
			};
			exps.LayerName = function (ret)
			{
				ret.set_string(this.layer.name);
			};
			exps.ZIndex = function (ret)
			{
				ret.set_int(this.get_zindex());
			};
		}
		if (effects_aces)
		{
			acts.SetEffectEnabled = function (enable_, effectname_)
			{
				if (!this.runtime.glwrap)
					return;
				var i = this.type.getEffectIndexByName(effectname_);
				if (i < 0)
					return;		// effect name not found
				var enable = (enable_ === 1);
				if (this.active_effect_flags[i] === enable)
					return;		// no change
				this.active_effect_flags[i] = enable;
				this.updateActiveEffects();
				this.runtime.redraw = true;
			};
			acts.SetEffectParam = function (effectname_, index_, value_)
			{
				if (!this.runtime.glwrap)
					return;
				var i = this.type.getEffectIndexByName(effectname_);
				if (i < 0)
					return;		// effect name not found
				var et = this.type.effect_types[i];
				var params = this.effect_params[i];
				index_ = Math.floor(index_);
				if (index_ < 0 || index_ >= params.length)
					return;		// effect index out of bounds
				if (this.runtime.glwrap.getProgramParameterType(et.shaderindex, index_) === 1)
					value_ /= 100.0;
				if (params[index_] === value_)
					return;		// no change
				params[index_] = value_;
				if (et.active)
					this.runtime.redraw = true;
			};
		}
	};
	cr.set_bbox_changed = function ()
	{
		this.bbox_changed = true;      		// will recreate next time box requested
		this.cell_changed = true;
		this.type.any_cell_changed = true;	// avoid unnecessary updateAllBBox() calls
		this.runtime.redraw = true;     	// assume runtime needs to redraw
		var i, len, callbacks = this.bbox_changed_callbacks;
		for (i = 0, len = callbacks.length; i < len; ++i)
		{
			callbacks[i](this);
		}
	};
	cr.add_bbox_changed_callback = function (f)
	{
		if (f)
		{
			this.bbox_changed_callbacks.push(f);
		}
	};
	cr.update_bbox = function ()
	{
		if (!this.bbox_changed)
			return;                 // bounding box not changed
		var bbox = this.bbox;
		var bquad = this.bquad;
		bbox.set(this.x, this.y, this.x + this.width, this.y + this.height);
		bbox.offset(-this.hotspotX * this.width, -this.hotspotY * this.height);
		if (!this.angle)
		{
			bquad.set_from_rect(bbox);    // make bounding quad from box
		}
		else
		{
			bbox.offset(-this.x, -this.y);       			// translate to origin
			bquad.set_from_rotated_rect(bbox, this.angle);	// rotate around origin
			bquad.offset(this.x, this.y);      				// translate back to original position
			bquad.bounding_box(bbox);
		}
		bbox.normalize();
		this.bbox_changed = false;  // bounding box up to date
	};
	var tmprc = new cr.rect(0, 0, 0, 0);
	cr.update_collision_cell = function ()
	{
		if (!this.cell_changed || !this.collisionsEnabled)
			return;
		this.update_bbox();
		var mygrid = this.type.collision_grid;
		var collcells = this.collcells;
		var bbox = this.bbox;
		tmprc.set(mygrid.XToCell(bbox.left), mygrid.YToCell(bbox.top), mygrid.XToCell(bbox.right), mygrid.YToCell(bbox.bottom));
		if (collcells.equals(tmprc))
			return;
		if (collcells.right < collcells.left)
			mygrid.update(this, null, tmprc);		// first insertion with invalid rect: don't provide old range
		else
			mygrid.update(this, collcells, tmprc);
		collcells.copy(tmprc);
		this.cell_changed = false;
	};
	cr.inst_contains_pt = function (x, y)
	{
		if (!this.bbox.contains_pt(x, y))
			return false;
		if (!this.bquad.contains_pt(x, y))
			return false;
		if (this.collision_poly && !this.collision_poly.is_empty())
		{
			this.collision_poly.cache_poly(this.width, this.height, this.angle);
			return this.collision_poly.contains_pt(x - this.x, y - this.y);
		}
		else
			return true;
	};
	cr.inst_get_iid = function ()
	{
		this.type.updateIIDs();
		return this.iid;
	};
	cr.inst_get_zindex = function ()
	{
		this.layer.updateZIndices();
		return this.zindex;
	};
	cr.inst_updateActiveEffects = function ()
	{
		this.active_effect_types.length = 0;
		var i, len, et, inst;
		for (i = 0, len = this.active_effect_flags.length; i < len; i++)
		{
			if (this.active_effect_flags[i])
				this.active_effect_types.push(this.type.effect_types[i]);
		}
		this.uses_shaders = !!this.active_effect_types.length;
	};
	cr.inst_toString = function ()
	{
		return "Inst" + this.puid;
	};
	cr.type_getFirstPicked = function (frominst)
	{
		if (frominst && frominst.is_contained && frominst.type != this)
		{
			var i, len, s;
			for (i = 0, len = frominst.siblings.length; i < len; i++)
			{
				s = frominst.siblings[i];
				if (s.type == this)
					return s;
			}
		}
		var instances = this.getCurrentSol().getObjects();
		if (instances.length)
			return instances[0];
		else
			return null;
	};
	cr.type_getPairedInstance = function (inst)
	{
		var instances = this.getCurrentSol().getObjects();
		if (instances.length)
			return instances[inst.get_iid() % instances.length];
		else
			return null;
	};
	cr.type_updateIIDs = function ()
	{
		if (!this.stale_iids || this.is_family)
			return;		// up to date or is family - don't want family to overwrite IIDs
		var i, len;
		for (i = 0, len = this.instances.length; i < len; i++)
			this.instances[i].iid = i;
		var next_iid = i;
		var createRow = this.runtime.createRow;
		for (i = 0, len = createRow.length; i < len; ++i)
		{
			if (createRow[i].type === this)
				createRow[i].iid = next_iid++;
		}
		this.stale_iids = false;
	};
	cr.type_getInstanceByIID = function (i)
	{
		if (i < this.instances.length)
			return this.instances[i];
		i -= this.instances.length;
		var createRow = this.runtime.createRow;
		var j, lenj;
		for (j = 0, lenj = createRow.length; j < lenj; ++j)
		{
			if (createRow[j].type === this)
			{
				if (i === 0)
					return createRow[j];
				--i;
			}
		}
;
		return null;
	};
	cr.type_getCurrentSol = function ()
	{
		return this.solstack[this.cur_sol];
	};
	cr.type_pushCleanSol = function ()
	{
		this.cur_sol++;
		if (this.cur_sol === this.solstack.length)
			this.solstack.push(new cr.selection(this));
		else
			this.solstack[this.cur_sol].select_all = true;  // else clear next SOL
	};
	cr.type_pushCopySol = function ()
	{
		this.cur_sol++;
		if (this.cur_sol === this.solstack.length)
			this.solstack.push(new cr.selection(this));
		var clonesol = this.solstack[this.cur_sol];
		var prevsol = this.solstack[this.cur_sol - 1];
		if (prevsol.select_all)
			clonesol.select_all = true;
		else
		{
			clonesol.select_all = false;
			cr.shallowAssignArray(clonesol.instances, prevsol.instances);
			cr.shallowAssignArray(clonesol.else_instances, prevsol.else_instances);
		}
	};
	cr.type_popSol = function ()
	{
;
		this.cur_sol--;
	};
	cr.type_getBehaviorByName = function (behname)
	{
		var i, len, j, lenj, f, index = 0;
		if (!this.is_family)
		{
			for (i = 0, len = this.families.length; i < len; i++)
			{
				f = this.families[i];
				for (j = 0, lenj = f.behaviors.length; j < lenj; j++)
				{
					if (behname === f.behaviors[j].name)
					{
						this.extra.lastBehIndex = index;
						return f.behaviors[j];
					}
					index++;
				}
			}
		}
		for (i = 0, len = this.behaviors.length; i < len; i++) {
			if (behname === this.behaviors[i].name)
			{
				this.extra.lastBehIndex = index;
				return this.behaviors[i];
			}
			index++;
		}
		return null;
	};
	cr.type_getBehaviorIndexByName = function (behname)
	{
		var b = this.getBehaviorByName(behname);
		if (b)
			return this.extra.lastBehIndex;
		else
			return -1;
	};
	cr.type_getEffectIndexByName = function (name_)
	{
		var i, len;
		for (i = 0, len = this.effect_types.length; i < len; i++)
		{
			if (this.effect_types[i].name === name_)
				return i;
		}
		return -1;
	};
	cr.type_applySolToContainer = function ()
	{
		if (!this.is_contained || this.is_family)
			return;
		var i, len, j, lenj, t, sol, sol2;
		this.updateIIDs();
		sol = this.getCurrentSol();
		var select_all = sol.select_all;
		var es = this.runtime.getCurrentEventStack();
		var orblock = es && es.current_event && es.current_event.orblock;
		for (i = 0, len = this.container.length; i < len; i++)
		{
			t = this.container[i];
			if (t === this)
				continue;
			t.updateIIDs();
			sol2 = t.getCurrentSol();
			sol2.select_all = select_all;
			if (!select_all)
			{
				sol2.instances.length = sol.instances.length;
				for (j = 0, lenj = sol.instances.length; j < lenj; j++)
					sol2.instances[j] = t.getInstanceByIID(sol.instances[j].iid);
				if (orblock)
				{
					sol2.else_instances.length = sol.else_instances.length;
					for (j = 0, lenj = sol.else_instances.length; j < lenj; j++)
						sol2.else_instances[j] = t.getInstanceByIID(sol.else_instances[j].iid);
				}
			}
		}
	};
	cr.type_toString = function ()
	{
		return "Type" + this.sid;
	};
	cr.do_cmp = function (x, cmp, y)
	{
		if (typeof x === "undefined" || typeof y === "undefined")
			return false;
		switch (cmp)
		{
			case 0:     // equal
				return x === y;
			case 1:     // not equal
				return x !== y;
			case 2:     // less
				return x < y;
			case 3:     // less/equal
				return x <= y;
			case 4:     // greater
				return x > y;
			case 5:     // greater/equal
				return x >= y;
			default:
;
				return false;
		}
	};
})();
cr.shaders = {};
;
;
cr.plugins_.Arr = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var pluginProto = cr.plugins_.Arr.prototype;
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	typeProto.onCreate = function()
	{
	};
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
	};
	var instanceProto = pluginProto.Instance.prototype;
	var arrCache = [];
	function allocArray()
	{
		if (arrCache.length)
			return arrCache.pop();
		else
			return [];
	};
	if (!Array.isArray)
	{
		Array.isArray = function (vArg) {
			return Object.prototype.toString.call(vArg) === "[object Array]";
		};
	}
	function freeArray(a)
	{
		var i, len;
		for (i = 0, len = a.length; i < len; i++)
		{
			if (Array.isArray(a[i]))
				freeArray(a[i]);
		}
		a.length = 0;
		arrCache.push(a);
	};
	instanceProto.onCreate = function()
	{
		this.cx = this.properties[0];
		this.cy = this.properties[1];
		this.cz = this.properties[2];
		if (!this.recycled)
			this.arr = allocArray();
		var a = this.arr;
		a.length = this.cx;
		var x, y, z;
		for (x = 0; x < this.cx; x++)
		{
			if (!a[x])
				a[x] = allocArray();
			a[x].length = this.cy;
			for (y = 0; y < this.cy; y++)
			{
				if (!a[x][y])
					a[x][y] = allocArray();
				a[x][y].length = this.cz;
				for (z = 0; z < this.cz; z++)
					a[x][y][z] = 0;
			}
		}
		this.forX = 0;
		this.forY = 0;
		this.forZ = 0;
	};
	instanceProto.onDestroy = function ()
	{
		var x;
		for (x = 0; x < this.cx; x++)
			freeArray(this.arr[x]);		// will recurse down and recycle other arrays
		this.arr.length = 0;
	};
	instanceProto.at = function (x, y, z)
	{
		x = Math.floor(x);
		y = Math.floor(y);
		z = Math.floor(z);
		if (isNaN(x) || x < 0 || x > this.cx - 1)
			return 0;
		if (isNaN(y) || y < 0 || y > this.cy - 1)
			return 0;
		if (isNaN(z) || z < 0 || z > this.cz - 1)
			return 0;
		return this.arr[x][y][z];
	};
	instanceProto.set = function (x, y, z, val)
	{
		x = Math.floor(x);
		y = Math.floor(y);
		z = Math.floor(z);
		if (isNaN(x) || x < 0 || x > this.cx - 1)
			return;
		if (isNaN(y) || y < 0 || y > this.cy - 1)
			return;
		if (isNaN(z) || z < 0 || z > this.cz - 1)
			return;
		this.arr[x][y][z] = val;
	};
	instanceProto.getAsJSON = function ()
	{
		return JSON.stringify({
			"c2array": true,
			"size": [this.cx, this.cy, this.cz],
			"data": this.arr
		});
	};
	instanceProto.saveToJSON = function ()
	{
		return {
			"size": [this.cx, this.cy, this.cz],
			"data": this.arr
		};
	};
	instanceProto.loadFromJSON = function (o)
	{
		var sz = o["size"];
		this.cx = sz[0];
		this.cy = sz[1];
		this.cz = sz[2];
		this.arr = o["data"];
	};
	instanceProto.setSize = function (w, h, d)
	{
		if (w < 0) w = 0;
		if (h < 0) h = 0;
		if (d < 0) d = 0;
		if (this.cx === w && this.cy === h && this.cz === d)
			return;		// no change
		this.cx = w;
		this.cy = h;
		this.cz = d;
		var x, y, z;
		var a = this.arr;
		a.length = w;
		for (x = 0; x < this.cx; x++)
		{
			if (cr.is_undefined(a[x]))
				a[x] = allocArray();
			a[x].length = h;
			for (y = 0; y < this.cy; y++)
			{
				if (cr.is_undefined(a[x][y]))
					a[x][y] = allocArray();
				a[x][y].length = d;
				for (z = 0; z < this.cz; z++)
				{
					if (cr.is_undefined(a[x][y][z]))
						a[x][y][z] = 0;
				}
			}
		}
	};
	function Cnds() {};
	Cnds.prototype.CompareX = function (x, cmp, val)
	{
		return cr.do_cmp(this.at(x, 0, 0), cmp, val);
	};
	Cnds.prototype.CompareXY = function (x, y, cmp, val)
	{
		return cr.do_cmp(this.at(x, y, 0), cmp, val);
	};
	Cnds.prototype.CompareXYZ = function (x, y, z, cmp, val)
	{
		return cr.do_cmp(this.at(x, y, z), cmp, val);
	};
	instanceProto.doForEachTrigger = function (current_event)
	{
		this.runtime.pushCopySol(current_event.solModifiers);
		current_event.retrigger();
		this.runtime.popSol(current_event.solModifiers);
	};
	Cnds.prototype.ArrForEach = function (dims)
	{
        var current_event = this.runtime.getCurrentEventStack().current_event;
		this.forX = 0;
		this.forY = 0;
		this.forZ = 0;
		switch (dims) {
		case 0:
			for (this.forX = 0; this.forX < this.cx; this.forX++)
			{
				for (this.forY = 0; this.forY < this.cy; this.forY++)
				{
					for (this.forZ = 0; this.forZ < this.cz; this.forZ++)
					{
						this.doForEachTrigger(current_event);
					}
				}
			}
			break;
		case 1:
			for (this.forX = 0; this.forX < this.cx; this.forX++)
			{
				for (this.forY = 0; this.forY < this.cy; this.forY++)
				{
					this.doForEachTrigger(current_event);
				}
			}
			break;
		case 2:
			for (this.forX = 0; this.forX < this.cx; this.forX++)
			{
				this.doForEachTrigger(current_event);
			}
			break;
		}
		this.forX = 0;
		this.forY = 0;
		this.forZ = 0;
		return false;
	};
	Cnds.prototype.CompareCurrent = function (cmp, val)
	{
		return cr.do_cmp(this.at(this.forX, this.forY, this.forZ), cmp, val);
	};
	Cnds.prototype.Contains = function(val)
	{
		var x, y, z;
		for (x = 0; x < this.cx; x++)
		{
			for (y = 0; y < this.cy; y++)
			{
				for (z = 0; z < this.cz; z++)
				{
					if (this.arr[x][y][z] === val)
						return true;
				}
			}
		}
		return false;
	};
	Cnds.prototype.IsEmpty = function ()
	{
		return this.cx === 0 || this.cy === 0 || this.cz === 0;
	};
	Cnds.prototype.CompareSize = function (axis, cmp, value)
	{
		var s = 0;
		switch (axis) {
		case 0:
			s = this.cx;
			break;
		case 1:
			s = this.cy;
			break;
		case 2:
			s = this.cz;
			break;
		}
		return cr.do_cmp(s, cmp, value);
	};
	pluginProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.Clear = function ()
	{
		var x, y, z;
		for (x = 0; x < this.cx; x++)
			for (y = 0; y < this.cy; y++)
				for (z = 0; z < this.cz; z++)
					this.arr[x][y][z] = 0;
	};
	Acts.prototype.SetSize = function (w, h, d)
	{
		this.setSize(w, h, d);
	};
	Acts.prototype.SetX = function (x, val)
	{
		this.set(x, 0, 0, val);
	};
	Acts.prototype.SetXY = function (x, y, val)
	{
		this.set(x, y, 0, val);
	};
	Acts.prototype.SetXYZ = function (x, y, z, val)
	{
		this.set(x, y, z, val);
	};
	Acts.prototype.Push = function (where, value, axis)
	{
		var x = 0, y = 0, z = 0;
		var a = this.arr;
		switch (axis) {
		case 0:	// X axis
			if (where === 0)	// back
			{
				x = a.length;
				a.push(allocArray());
			}
			else				// front
			{
				x = 0;
				a.unshift(allocArray());
			}
			a[x].length = this.cy;
			for ( ; y < this.cy; y++)
			{
				a[x][y] = allocArray();
				a[x][y].length = this.cz;
				for (z = 0; z < this.cz; z++)
					a[x][y][z] = value;
			}
			this.cx++;
			break;
		case 1: // Y axis
			for ( ; x < this.cx; x++)
			{
				if (where === 0)	// back
				{
					y = a[x].length;
					a[x].push(allocArray());
				}
				else				// front
				{
					y = 0;
					a[x].unshift(allocArray());
				}
				a[x][y].length = this.cz;
				for (z = 0; z < this.cz; z++)
					a[x][y][z] = value;
			}
			this.cy++;
			break;
		case 2:	// Z axis
			for ( ; x < this.cx; x++)
			{
				for (y = 0; y < this.cy; y++)
				{
					if (where === 0)	// back
					{
						a[x][y].push(value);
					}
					else				// front
					{
						a[x][y].unshift(value);
					}
				}
			}
			this.cz++;
			break;
		}
	};
	Acts.prototype.Pop = function (where, axis)
	{
		var x = 0, y = 0, z = 0;
		var a = this.arr;
		switch (axis) {
		case 0:	// X axis
			if (this.cx === 0)
				break;
			if (where === 0)	// back
			{
				freeArray(a.pop());
			}
			else				// front
			{
				freeArray(a.shift());
			}
			this.cx--;
			break;
		case 1: // Y axis
			if (this.cy === 0)
				break;
			for ( ; x < this.cx; x++)
			{
				if (where === 0)	// back
				{
					freeArray(a[x].pop());
				}
				else				// front
				{
					freeArray(a[x].shift());
				}
			}
			this.cy--;
			break;
		case 2:	// Z axis
			if (this.cz === 0)
				break;
			for ( ; x < this.cx; x++)
			{
				for (y = 0; y < this.cy; y++)
				{
					if (where === 0)	// back
					{
						a[x][y].pop();
					}
					else				// front
					{
						a[x][y].shift();
					}
				}
			}
			this.cz--;
			break;
		}
	};
	Acts.prototype.Reverse = function (axis)
	{
		var x = 0, y = 0, z = 0;
		var a = this.arr;
		if (this.cx === 0 || this.cy === 0 || this.cz === 0)
			return;		// no point reversing empty array
		switch (axis) {
		case 0:	// X axis
			a.reverse();
			break;
		case 1: // Y axis
			for ( ; x < this.cx; x++)
				a[x].reverse();
			break;
		case 2:	// Z axis
			for ( ; x < this.cx; x++)
				for (y = 0; y < this.cy; y++)
					a[x][y].reverse();
			this.cz--;
			break;
		}
	};
	function compareValues(va, vb)
	{
		if (cr.is_number(va) && cr.is_number(vb))
			return va - vb;
		else
		{
			var sa = "" + va;
			var sb = "" + vb;
			if (sa < sb)
				return -1;
			else if (sa > sb)
				return 1;
			else
				return 0;
		}
	}
	Acts.prototype.Sort = function (axis)
	{
		var x = 0, y = 0, z = 0;
		var a = this.arr;
		if (this.cx === 0 || this.cy === 0 || this.cz === 0)
			return;		// no point sorting empty array
		switch (axis) {
		case 0:	// X axis
			a.sort(function (a, b) {
				return compareValues(a[0][0], b[0][0]);
			});
			break;
		case 1: // Y axis
			for ( ; x < this.cx; x++)
			{
				a[x].sort(function (a, b) {
					return compareValues(a[0], b[0]);
				});
			}
			break;
		case 2:	// Z axis
			for ( ; x < this.cx; x++)
			{
				for (y = 0; y < this.cy; y++)
				{
					a[x][y].sort(compareValues);
				}
			}
			break;
		}
	};
	Acts.prototype.Delete = function (index, axis)
	{
		var x = 0, y = 0, z = 0;
		index = Math.floor(index);
		var a = this.arr;
		if (index < 0)
			return;
		switch (axis) {
		case 0:	// X axis
			if (index >= this.cx)
				break;
			freeArray(a[index]);
			a.splice(index, 1);
			this.cx--;
			break;
		case 1: // Y axis
			if (index >= this.cy)
				break;
			for ( ; x < this.cx; x++)
			{
				freeArray(a[x][index]);
				a[x].splice(index, 1);
			}
			this.cy--;
			break;
		case 2:	// Z axis
			if (index >= this.cz)
				break;
			for ( ; x < this.cx; x++)
			{
				for (y = 0; y < this.cy; y++)
				{
					a[x][y].splice(index, 1);
				}
			}
			this.cz--;
			break;
		}
	};
	Acts.prototype.Insert = function (value, index, axis)
	{
		var x = 0, y = 0, z = 0;
		index = Math.floor(index);
		var a = this.arr;
		if (index < 0)
			return;
		switch (axis) {
		case 0:	// X axis
			if (index > this.cx)
				return;
			x = index;
			a.splice(x, 0, allocArray());
			a[x].length = this.cy;
			for ( ; y < this.cy; y++)
			{
				a[x][y] = allocArray();
				a[x][y].length = this.cz;
				for (z = 0; z < this.cz; z++)
					a[x][y][z] = value;
			}
			this.cx++;
			break;
		case 1: // Y axis
			if (index > this.cy)
				return;
			for ( ; x < this.cx; x++)
			{
				y = index;
				a[x].splice(y, 0, allocArray());
				a[x][y].length = this.cz;
				for (z = 0; z < this.cz; z++)
					a[x][y][z] = value;
			}
			this.cy++;
			break;
		case 2:	// Z axis
			if (index > this.cz)
				return;
			for ( ; x < this.cx; x++)
			{
				for (y = 0; y < this.cy; y++)
				{
					a[x][y].splice(index, 0, value);
				}
			}
			this.cz++;
			break;
		}
	};
	Acts.prototype.JSONLoad = function (json_)
	{
		var o;
		try {
			o = JSON.parse(json_);
		}
		catch(e) { return; }
		if (!o["c2array"])		// presumably not a c2array object
			return;
		var sz = o["size"];
		this.cx = sz[0];
		this.cy = sz[1];
		this.cz = sz[2];
		this.arr = o["data"];
	};
	Acts.prototype.JSONDownload = function (filename)
	{
		var a = document.createElement("a");
		if (typeof a.download === "undefined")
		{
			var str = 'data:text/html,' + encodeURIComponent("<p><a download='" + filename + "' href=\"data:application/json,"
				+ encodeURIComponent(this.getAsJSON())
				+ "\">Download link</a></p>");
			window.open(str);
		}
		else
		{
			var body = document.getElementsByTagName("body")[0];
			a.textContent = filename;
			a.href = "data:application/json," + encodeURIComponent(this.getAsJSON());
			a.download = filename;
			body.appendChild(a);
			var clickEvent = document.createEvent("MouseEvent");
			clickEvent.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
			a.dispatchEvent(clickEvent);
			body.removeChild(a);
		}
	};
	pluginProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.At = function (ret, x, y_, z_)
	{
		var y = y_ || 0;
		var z = z_ || 0;
		ret.set_any(this.at(x, y, z));
	};
	Exps.prototype.Width = function (ret)
	{
		ret.set_int(this.cx);
	};
	Exps.prototype.Height = function (ret)
	{
		ret.set_int(this.cy);
	};
	Exps.prototype.Depth = function (ret)
	{
		ret.set_int(this.cz);
	};
	Exps.prototype.CurX = function (ret)
	{
		ret.set_int(this.forX);
	};
	Exps.prototype.CurY = function (ret)
	{
		ret.set_int(this.forY);
	};
	Exps.prototype.CurZ = function (ret)
	{
		ret.set_int(this.forZ);
	};
	Exps.prototype.CurValue = function (ret)
	{
		ret.set_any(this.at(this.forX, this.forY, this.forZ));
	};
	Exps.prototype.Front = function (ret)
	{
		ret.set_any(this.at(0, 0, 0));
	};
	Exps.prototype.Back = function (ret)
	{
		ret.set_any(this.at(this.cx - 1, 0, 0));
	};
	Exps.prototype.IndexOf = function (ret, v)
	{
		for (var i = 0; i < this.cx; i++)
		{
			if (this.arr[i][0][0] === v)
			{
				ret.set_int(i);
				return;
			}
		}
		ret.set_int(-1);
	};
	Exps.prototype.LastIndexOf = function (ret, v)
	{
		for (var i = this.cx - 1; i >= 0; i--)
		{
			if (this.arr[i][0][0] === v)
			{
				ret.set_int(i);
				return;
			}
		}
		ret.set_int(-1);
	};
	Exps.prototype.AsJSON = function (ret)
	{
		ret.set_string(this.getAsJSON());
	};
	pluginProto.exps = new Exps();
}());
;
;
cr.plugins_.Audio = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var pluginProto = cr.plugins_.Audio.prototype;
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	typeProto.onCreate = function()
	{
	};
	var audRuntime = null;
	var audInst = null;
	var audTag = "";
	var appPath = "";			// for PhoneGap only
	var API_HTML5 = 0;
	var API_WEBAUDIO = 1;
	var API_PHONEGAP = 2;
	var API_APPMOBI = 3;
	var api = API_HTML5;
	var context = null;
	var audioBuffers = [];		// cache of buffers
	var audioInstances = [];	// cache of instances
	var lastAudio = null;
	var useOgg = false;			// determined at create time
	var timescale_mode = 0;
	var silent = false;
	var masterVolume = 1;
	var listenerX = 0;
	var listenerY = 0;
	var panningModel = 1;		// HRTF
	var distanceModel = 1;		// Inverse
	var refDistance = 10;
	var maxDistance = 10000;
	var rolloffFactor = 1;
	var micSource = null;
	var micTag = "";
	var isMusicWorkaround = false;
	var musicPlayNextTouch = [];
	function dbToLinear(x)
	{
		var v = dbToLinear_nocap(x);
		if (v < 0)
			v = 0;
		if (v > 1)
			v = 1;
		return v;
	};
	function linearToDb(x)
	{
		if (x < 0)
			x = 0;
		if (x > 1)
			x = 1;
		return linearToDb_nocap(x);
	};
	function dbToLinear_nocap(x)
	{
		return Math.pow(10, x / 20);
	};
	function linearToDb_nocap(x)
	{
		return (Math.log(x) / Math.log(10)) * 20;
	};
	var effects = {};
	function getDestinationForTag(tag)
	{
		tag = tag.toLowerCase();
		if (effects.hasOwnProperty(tag))
		{
			if (effects[tag].length)
				return effects[tag][0].getInputNode();
		}
		return context["destination"];
	};
	function createGain()
	{
		if (context["createGain"])
			return context["createGain"]();
		else
			return context["createGainNode"]();
	};
	function createDelay(d)
	{
		if (context["createDelay"])
			return context["createDelay"](d);
		else
			return context["createDelayNode"](d);
	};
	function startSource(s)
	{
		if (s["start"])
			s["start"](0);
		else
			s["noteOn"](0);
	};
	function startSourceAt(s, x, d)
	{
		if (s["start"])
			s["start"](0, x);
		else
			s["noteGrainOn"](0, x, d - x);
	};
	function stopSource(s)
	{
		try {
			if (s["stop"])
				s["stop"](0);
			else
				s["noteOff"](0);
		}
		catch (e) {}
	};
	function setAudioParam(ap, value, ramp, time)
	{
		if (!ap)
			return;		// iOS is missing some parameters
		ap["cancelScheduledValues"](0);
		if (time === 0)
		{
			ap["value"] = value;
			return;
		}
		var curTime = context["currentTime"];
		time += curTime;
		switch (ramp) {
		case 0:		// step
			ap["setValueAtTime"](value, time);
			break;
		case 1:		// linear
			ap["setValueAtTime"](ap["value"], curTime);		// to set what to ramp from
			ap["linearRampToValueAtTime"](value, time);
			break;
		case 2:		// exponential
			ap["setValueAtTime"](ap["value"], curTime);		// to set what to ramp from
			ap["exponentialRampToValueAtTime"](value, time);
			break;
		}
	};
	var filterTypes = ["lowpass", "highpass", "bandpass", "lowshelf", "highshelf", "peaking", "notch", "allpass"];
	function FilterEffect(type, freq, detune, q, gain, mix)
	{
		this.type = "filter";
		this.params = [type, freq, detune, q, gain, mix];
		this.inputNode = createGain();
		this.wetNode = createGain();
		this.wetNode["gain"]["value"] = mix;
		this.dryNode = createGain();
		this.dryNode["gain"]["value"] = 1 - mix;
		this.filterNode = context["createBiquadFilter"]();
		if (typeof this.filterNode["type"] === "number")
			this.filterNode["type"] = type;
		else
			this.filterNode["type"] = filterTypes[type];
		this.filterNode["frequency"]["value"] = freq;
		if (this.filterNode["detune"])		// iOS 6 doesn't have detune yet
			this.filterNode["detune"]["value"] = detune;
		this.filterNode["Q"]["value"] = q;
		this.filterNode["gain"]["value"] = gain;
		this.inputNode["connect"](this.filterNode);
		this.inputNode["connect"](this.dryNode);
		this.filterNode["connect"](this.wetNode);
	};
	FilterEffect.prototype.connectTo = function (node)
	{
		this.wetNode["disconnect"]();
		this.wetNode["connect"](node);
		this.dryNode["disconnect"]();
		this.dryNode["connect"](node);
	};
	FilterEffect.prototype.remove = function ()
	{
		this.inputNode["disconnect"]();
		this.filterNode["disconnect"]();
		this.wetNode["disconnect"]();
		this.dryNode["disconnect"]();
	};
	FilterEffect.prototype.getInputNode = function ()
	{
		return this.inputNode;
	};
	FilterEffect.prototype.setParam = function(param, value, ramp, time)
	{
		switch (param) {
		case 0:		// mix
			value = value / 100;
			if (value < 0) value = 0;
			if (value > 1) value = 1;
			this.params[5] = value;
			setAudioParam(this.wetNode["gain"], value, ramp, time);
			setAudioParam(this.dryNode["gain"], 1 - value, ramp, time);
			break;
		case 1:		// filter frequency
			this.params[1] = value;
			setAudioParam(this.filterNode["frequency"], value, ramp, time);
			break;
		case 2:		// filter detune
			this.params[2] = value;
			setAudioParam(this.filterNode["detune"], value, ramp, time);
			break;
		case 3:		// filter Q
			this.params[3] = value;
			setAudioParam(this.filterNode["Q"], value, ramp, time);
			break;
		case 4:		// filter/delay gain (note value is in dB here)
			this.params[4] = value;
			setAudioParam(this.filterNode["gain"], value, ramp, time);
			break;
		}
	};
	function DelayEffect(delayTime, delayGain, mix)
	{
		this.type = "delay";
		this.params = [delayTime, delayGain, mix];
		this.inputNode = createGain();
		this.wetNode = createGain();
		this.wetNode["gain"]["value"] = mix;
		this.dryNode = createGain();
		this.dryNode["gain"]["value"] = 1 - mix;
		this.mainNode = createGain();
		this.delayNode = createDelay(delayTime);
		this.delayNode["delayTime"]["value"] = delayTime;
		this.delayGainNode = createGain();
		this.delayGainNode["gain"]["value"] = delayGain;
		this.inputNode["connect"](this.mainNode);
		this.inputNode["connect"](this.dryNode);
		this.mainNode["connect"](this.wetNode);
		this.mainNode["connect"](this.delayNode);
		this.delayNode["connect"](this.delayGainNode);
		this.delayGainNode["connect"](this.mainNode);
	};
	DelayEffect.prototype.connectTo = function (node)
	{
		this.wetNode["disconnect"]();
		this.wetNode["connect"](node);
		this.dryNode["disconnect"]();
		this.dryNode["connect"](node);
	};
	DelayEffect.prototype.remove = function ()
	{
		this.inputNode["disconnect"]();
		this.mainNode["disconnect"]();
		this.delayNode["disconnect"]();
		this.delayGainNode["disconnect"]();
		this.wetNode["disconnect"]();
		this.dryNode["disconnect"]();
	};
	DelayEffect.prototype.getInputNode = function ()
	{
		return this.inputNode;
	};
	DelayEffect.prototype.setParam = function(param, value, ramp, time)
	{
		switch (param) {
		case 0:		// mix
			value = value / 100;
			if (value < 0) value = 0;
			if (value > 1) value = 1;
			this.params[2] = value;
			setAudioParam(this.wetNode["gain"], value, ramp, time);
			setAudioParam(this.dryNode["gain"], 1 - value, ramp, time);
			break;
		case 4:		// filter/delay gain (note value is passed in dB but needs to be linear here)
			this.params[1] = dbToLinear(value);
			setAudioParam(this.delayGainNode["gain"], dbToLinear(value), ramp, time);
			break;
		case 5:		// delay time
			this.params[0] = value;
			setAudioParam(this.delayNode["delayTime"], value, ramp, time);
			break;
		}
	};
	function ConvolveEffect(buffer, normalize, mix, src)
	{
		this.type = "convolve";
		this.params = [normalize, mix, src];
		this.inputNode = createGain();
		this.wetNode = createGain();
		this.wetNode["gain"]["value"] = mix;
		this.dryNode = createGain();
		this.dryNode["gain"]["value"] = 1 - mix;
		this.convolveNode = context["createConvolver"]();
		if (buffer)
		{
			this.convolveNode["normalize"] = normalize;
			this.convolveNode["buffer"] = buffer;
		}
		this.inputNode["connect"](this.convolveNode);
		this.inputNode["connect"](this.dryNode);
		this.convolveNode["connect"](this.wetNode);
	};
	ConvolveEffect.prototype.connectTo = function (node)
	{
		this.wetNode["disconnect"]();
		this.wetNode["connect"](node);
		this.dryNode["disconnect"]();
		this.dryNode["connect"](node);
	};
	ConvolveEffect.prototype.remove = function ()
	{
		this.inputNode["disconnect"]();
		this.convolveNode["disconnect"]();
		this.wetNode["disconnect"]();
		this.dryNode["disconnect"]();
	};
	ConvolveEffect.prototype.getInputNode = function ()
	{
		return this.inputNode;
	};
	ConvolveEffect.prototype.setParam = function(param, value, ramp, time)
	{
		switch (param) {
		case 0:		// mix
			value = value / 100;
			if (value < 0) value = 0;
			if (value > 1) value = 1;
			this.params[1] = value;
			setAudioParam(this.wetNode["gain"], value, ramp, time);
			setAudioParam(this.dryNode["gain"], 1 - value, ramp, time);
			break;
		}
	};
	function FlangerEffect(delay, modulation, freq, feedback, mix)
	{
		this.type = "flanger";
		this.params = [delay, modulation, freq, feedback, mix];
		this.inputNode = createGain();
		this.dryNode = createGain();
		this.dryNode["gain"]["value"] = 1 - (mix / 2);
		this.wetNode = createGain();
		this.wetNode["gain"]["value"] = mix / 2;
		this.feedbackNode = createGain();
		this.feedbackNode["gain"]["value"] = feedback;
		this.delayNode = createDelay(delay + modulation);
		this.delayNode["delayTime"]["value"] = delay;
		this.oscNode = context["createOscillator"]();
		this.oscNode["frequency"]["value"] = freq;
		this.oscGainNode = createGain();
		this.oscGainNode["gain"]["value"] = modulation;
		this.inputNode["connect"](this.delayNode);
		this.inputNode["connect"](this.dryNode);
		this.delayNode["connect"](this.wetNode);
		this.delayNode["connect"](this.feedbackNode);
		this.feedbackNode["connect"](this.delayNode);
		this.oscNode["connect"](this.oscGainNode);
		this.oscGainNode["connect"](this.delayNode["delayTime"]);
		startSource(this.oscNode);
	};
	FlangerEffect.prototype.connectTo = function (node)
	{
		this.dryNode["disconnect"]();
		this.dryNode["connect"](node);
		this.wetNode["disconnect"]();
		this.wetNode["connect"](node);
	};
	FlangerEffect.prototype.remove = function ()
	{
		this.inputNode["disconnect"]();
		this.delayNode["disconnect"]();
		this.oscNode["disconnect"]();
		this.oscGainNode["disconnect"]();
		this.dryNode["disconnect"]();
		this.wetNode["disconnect"]();
		this.feedbackNode["disconnect"]();
	};
	FlangerEffect.prototype.getInputNode = function ()
	{
		return this.inputNode;
	};
	FlangerEffect.prototype.setParam = function(param, value, ramp, time)
	{
		switch (param) {
		case 0:		// mix
			value = value / 100;
			if (value < 0) value = 0;
			if (value > 1) value = 1;
			this.params[4] = value;
			setAudioParam(this.wetNode["gain"], value / 2, ramp, time);
			setAudioParam(this.dryNode["gain"], 1 - (value / 2), ramp, time);
			break;
		case 6:		// modulation
			this.params[1] = value / 1000;
			setAudioParam(this.oscGainNode["gain"], value / 1000, ramp, time);
			break;
		case 7:		// modulation frequency
			this.params[2] = value;
			setAudioParam(this.oscNode["frequency"], value, ramp, time);
			break;
		case 8:		// feedback
			this.params[3] = value / 100;
			setAudioParam(this.feedbackNode["gain"], value / 100, ramp, time);
			break;
		}
	};
	function PhaserEffect(freq, detune, q, modulation, modfreq, mix)
	{
		this.type = "phaser";
		this.params = [freq, detune, q, modulation, modfreq, mix];
		this.inputNode = createGain();
		this.dryNode = createGain();
		this.dryNode["gain"]["value"] = 1 - (mix / 2);
		this.wetNode = createGain();
		this.wetNode["gain"]["value"] = mix / 2;
		this.filterNode = context["createBiquadFilter"]();
		if (typeof this.filterNode["type"] === "number")
			this.filterNode["type"] = 7;	// all-pass
		else
			this.filterNode["type"] = "allpass";
		this.filterNode["frequency"]["value"] = freq;
		if (this.filterNode["detune"])		// iOS 6 doesn't have detune yet
			this.filterNode["detune"]["value"] = detune;
		this.filterNode["Q"]["value"] = q;
		this.oscNode = context["createOscillator"]();
		this.oscNode["frequency"]["value"] = modfreq;
		this.oscGainNode = createGain();
		this.oscGainNode["gain"]["value"] = modulation;
		this.inputNode["connect"](this.filterNode);
		this.inputNode["connect"](this.dryNode);
		this.filterNode["connect"](this.wetNode);
		this.oscNode["connect"](this.oscGainNode);
		this.oscGainNode["connect"](this.filterNode["frequency"]);
		startSource(this.oscNode);
	};
	PhaserEffect.prototype.connectTo = function (node)
	{
		this.dryNode["disconnect"]();
		this.dryNode["connect"](node);
		this.wetNode["disconnect"]();
		this.wetNode["connect"](node);
	};
	PhaserEffect.prototype.remove = function ()
	{
		this.inputNode["disconnect"]();
		this.filterNode["disconnect"]();
		this.oscNode["disconnect"]();
		this.oscGainNode["disconnect"]();
		this.dryNode["disconnect"]();
		this.wetNode["disconnect"]();
	};
	PhaserEffect.prototype.getInputNode = function ()
	{
		return this.inputNode;
	};
	PhaserEffect.prototype.setParam = function(param, value, ramp, time)
	{
		switch (param) {
		case 0:		// mix
			value = value / 100;
			if (value < 0) value = 0;
			if (value > 1) value = 1;
			this.params[5] = value;
			setAudioParam(this.wetNode["gain"], value / 2, ramp, time);
			setAudioParam(this.dryNode["gain"], 1 - (value / 2), ramp, time);
			break;
		case 1:		// filter frequency
			this.params[0] = value;
			setAudioParam(this.filterNode["frequency"], value, ramp, time);
			break;
		case 2:		// filter detune
			this.params[1] = value;
			setAudioParam(this.filterNode["detune"], value, ramp, time);
			break;
		case 3:		// filter Q
			this.params[2] = value;
			setAudioParam(this.filterNode["Q"], value, ramp, time);
			break;
		case 6:		// modulation
			this.params[3] = value;
			setAudioParam(this.oscGainNode["gain"], value, ramp, time);
			break;
		case 7:		// modulation frequency
			this.params[4] = value;
			setAudioParam(this.oscNode["frequency"], value, ramp, time);
			break;
		}
	};
	function GainEffect(g)
	{
		this.type = "gain";
		this.params = [g];
		this.node = createGain();
		this.node["gain"]["value"] = g;
	};
	GainEffect.prototype.connectTo = function (node_)
	{
		this.node["disconnect"]();
		this.node["connect"](node_);
	};
	GainEffect.prototype.remove = function ()
	{
		this.node["disconnect"]();
	};
	GainEffect.prototype.getInputNode = function ()
	{
		return this.node;
	};
	GainEffect.prototype.setParam = function(param, value, ramp, time)
	{
		switch (param) {
		case 4:		// gain
			this.params[0] = dbToLinear(value);
			setAudioParam(this.node["gain"], dbToLinear(value), ramp, time);
			break;
		}
	};
	function TremoloEffect(freq, mix)
	{
		this.type = "tremolo";
		this.params = [freq, mix];
		this.node = createGain();
		this.node["gain"]["value"] = 1 - (mix / 2);
		this.oscNode = context["createOscillator"]();
		this.oscNode["frequency"]["value"] = freq;
		this.oscGainNode = createGain();
		this.oscGainNode["gain"]["value"] = mix / 2;
		this.oscNode["connect"](this.oscGainNode);
		this.oscGainNode["connect"](this.node["gain"]);
		startSource(this.oscNode);
	};
	TremoloEffect.prototype.connectTo = function (node_)
	{
		this.node["disconnect"]();
		this.node["connect"](node_);
	};
	TremoloEffect.prototype.remove = function ()
	{
		this.oscNode["disconnect"]();
		this.oscGainNode["disconnect"]();
		this.node["disconnect"]();
	};
	TremoloEffect.prototype.getInputNode = function ()
	{
		return this.node;
	};
	TremoloEffect.prototype.setParam = function(param, value, ramp, time)
	{
		switch (param) {
		case 0:		// mix
			value = value / 100;
			if (value < 0) value = 0;
			if (value > 1) value = 1;
			this.params[1] = value;
			setAudioParam(this.node["gain"]["value"], 1 - (value / 2), ramp, time);
			setAudioParam(this.oscGainNode["gain"]["value"], value / 2, ramp, time);
			break;
		case 7:		// modulation frequency
			this.params[0] = value;
			setAudioParam(this.oscNode["frequency"], value, ramp, time);
			break;
		}
	};
	function RingModulatorEffect(freq, mix)
	{
		this.type = "ringmod";
		this.params = [freq, mix];
		this.inputNode = createGain();
		this.wetNode = createGain();
		this.wetNode["gain"]["value"] = mix;
		this.dryNode = createGain();
		this.dryNode["gain"]["value"] = 1 - mix;
		this.ringNode = createGain();
		this.ringNode["gain"]["value"] = 0;
		this.oscNode = context["createOscillator"]();
		this.oscNode["frequency"]["value"] = freq;
		this.oscNode["connect"](this.ringNode["gain"]);
		startSource(this.oscNode);
		this.inputNode["connect"](this.ringNode);
		this.inputNode["connect"](this.dryNode);
		this.ringNode["connect"](this.wetNode);
	};
	RingModulatorEffect.prototype.connectTo = function (node_)
	{
		this.wetNode["disconnect"]();
		this.wetNode["connect"](node_);
		this.dryNode["disconnect"]();
		this.dryNode["connect"](node_);
	};
	RingModulatorEffect.prototype.remove = function ()
	{
		this.oscNode["disconnect"]();
		this.ringNode["disconnect"]();
		this.inputNode["disconnect"]();
		this.wetNode["disconnect"]();
		this.dryNode["disconnect"]();
	};
	RingModulatorEffect.prototype.getInputNode = function ()
	{
		return this.inputNode;
	};
	RingModulatorEffect.prototype.setParam = function(param, value, ramp, time)
	{
		switch (param) {
		case 0:		// mix
			value = value / 100;
			if (value < 0) value = 0;
			if (value > 1) value = 1;
			this.params[1] = value;
			setAudioParam(this.wetNode["gain"], value, ramp, time);
			setAudioParam(this.dryNode["gain"], 1 - value, ramp, time);
			break;
		case 7:		// modulation frequency
			this.params[0] = value;
			setAudioParam(this.oscNode["frequency"], value, ramp, time);
			break;
		}
	};
	function DistortionEffect(threshold, headroom, drive, makeupgain, mix)
	{
		this.type = "distortion";
		this.params = [threshold, headroom, drive, makeupgain, mix];
		this.inputNode = createGain();
		this.preGain = createGain();
		this.postGain = createGain();
		this.setDrive(drive, dbToLinear_nocap(makeupgain));
		this.wetNode = createGain();
		this.wetNode["gain"]["value"] = mix;
		this.dryNode = createGain();
		this.dryNode["gain"]["value"] = 1 - mix;
		this.waveShaper = context["createWaveShaper"]();
		this.curve = new Float32Array(65536);
		this.generateColortouchCurve(threshold, headroom);
		this.waveShaper.curve = this.curve;
		this.inputNode["connect"](this.preGain);
		this.inputNode["connect"](this.dryNode);
		this.preGain["connect"](this.waveShaper);
		this.waveShaper["connect"](this.postGain);
		this.postGain["connect"](this.wetNode);
	};
	DistortionEffect.prototype.setDrive = function (drive, makeupgain)
	{
		if (drive < 0.01)
			drive = 0.01;
		this.preGain["gain"]["value"] = drive;
		this.postGain["gain"]["value"] = Math.pow(1 / drive, 0.6) * makeupgain;
	};
	function e4(x, k)
	{
		return 1.0 - Math.exp(-k * x);
	}
	DistortionEffect.prototype.shape = function (x, linearThreshold, linearHeadroom)
	{
		var maximum = 1.05 * linearHeadroom * linearThreshold;
		var kk = (maximum - linearThreshold);
		var sign = x < 0 ? -1 : +1;
		var absx = x < 0 ? -x : x;
		var shapedInput = absx < linearThreshold ? absx : linearThreshold + kk * e4(absx - linearThreshold, 1.0 / kk);
		shapedInput *= sign;
		return shapedInput;
	};
	DistortionEffect.prototype.generateColortouchCurve = function (threshold, headroom)
	{
		var linearThreshold = dbToLinear_nocap(threshold);
		var linearHeadroom = dbToLinear_nocap(headroom);
		var n = 65536;
		var n2 = n / 2;
		var x = 0;
		for (var i = 0; i < n2; ++i) {
			x = i / n2;
			x = this.shape(x, linearThreshold, linearHeadroom);
			this.curve[n2 + i] = x;
			this.curve[n2 - i - 1] = -x;
		}
	};
	DistortionEffect.prototype.connectTo = function (node)
	{
		this.wetNode["disconnect"]();
		this.wetNode["connect"](node);
		this.dryNode["disconnect"]();
		this.dryNode["connect"](node);
	};
	DistortionEffect.prototype.remove = function ()
	{
		this.inputNode["disconnect"]();
		this.preGain["disconnect"]();
		this.waveShaper["disconnect"]();
		this.postGain["disconnect"]();
		this.wetNode["disconnect"]();
		this.dryNode["disconnect"]();
	};
	DistortionEffect.prototype.getInputNode = function ()
	{
		return this.inputNode;
	};
	DistortionEffect.prototype.setParam = function(param, value, ramp, time)
	{
		switch (param) {
		case 0:		// mix
			value = value / 100;
			if (value < 0) value = 0;
			if (value > 1) value = 1;
			this.params[4] = value;
			setAudioParam(this.wetNode["gain"], value, ramp, time);
			setAudioParam(this.dryNode["gain"], 1 - value, ramp, time);
			break;
		}
	};
	function CompressorEffect(threshold, knee, ratio, attack, release)
	{
		this.type = "compressor";
		this.params = [threshold, knee, ratio, attack, release];
		this.node = context["createDynamicsCompressor"]();
		try {
			this.node["threshold"]["value"] = threshold;
			this.node["knee"]["value"] = knee;
			this.node["ratio"]["value"] = ratio;
			this.node["attack"]["value"] = attack;
			this.node["release"]["value"] = release;
		}
		catch (e) {}
	};
	CompressorEffect.prototype.connectTo = function (node_)
	{
		this.node["disconnect"]();
		this.node["connect"](node_);
	};
	CompressorEffect.prototype.remove = function ()
	{
		this.node["disconnect"]();
	};
	CompressorEffect.prototype.getInputNode = function ()
	{
		return this.node;
	};
	CompressorEffect.prototype.setParam = function(param, value, ramp, time)
	{
	};
	function AnalyserEffect(fftSize, smoothing)
	{
		this.type = "analyser";
		this.params = [fftSize, smoothing];
		this.node = context["createAnalyser"]();
		this.node["fftSize"] = fftSize;
		this.node["smoothingTimeConstant"] = smoothing;
		this.freqBins = new Float32Array(this.node["frequencyBinCount"]);
		this.signal = new Uint8Array(fftSize);
		this.peak = 0;
		this.rms = 0;
	};
	AnalyserEffect.prototype.tick = function ()
	{
		this.node["getFloatFrequencyData"](this.freqBins);
		this.node["getByteTimeDomainData"](this.signal);
		var fftSize = this.node["fftSize"];
		var i = 0;
		this.peak = 0;
		var rmsSquaredSum = 0;
		var s = 0;
		for ( ; i < fftSize; i++)
		{
			s = (this.signal[i] - 128) / 128;
			if (s < 0)
				s = -s;
			if (this.peak < s)
				this.peak = s;
			rmsSquaredSum += s * s;
		}
		this.peak = linearToDb(this.peak);
		this.rms = linearToDb(Math.sqrt(rmsSquaredSum / fftSize));
	};
	AnalyserEffect.prototype.connectTo = function (node_)
	{
		this.node["disconnect"]();
		this.node["connect"](node_);
	};
	AnalyserEffect.prototype.remove = function ()
	{
		this.node["disconnect"]();
	};
	AnalyserEffect.prototype.getInputNode = function ()
	{
		return this.node;
	};
	AnalyserEffect.prototype.setParam = function(param, value, ramp, time)
	{
	};
	var OT_POS_SAMPLES = 4;
	function ObjectTracker()
	{
		this.obj = null;
		this.loadUid = 0;
		this.speeds = [];
		this.lastX = 0;
		this.lastY = 0;
		this.moveAngle = 0;
	};
	ObjectTracker.prototype.setObject = function (obj_)
	{
		this.obj = obj_;
		if (this.obj)
		{
			this.lastX = this.obj.x;
			this.lastY = this.obj.y;
		}
		this.speeds.length = 0;
	};
	ObjectTracker.prototype.hasObject = function ()
	{
		return !!this.obj;
	};
	ObjectTracker.prototype.tick = function (dt)
	{
		if (!this.obj || dt === 0)
			return;
		this.moveAngle = cr.angleTo(this.lastX, this.lastY, this.obj.x, this.obj.y);
		var s = cr.distanceTo(this.lastX, this.lastY, this.obj.x, this.obj.y) / dt;
		if (this.speeds.length < OT_POS_SAMPLES)
			this.speeds.push(s);
		else
		{
			this.speeds.shift();
			this.speeds.push(s);
		}
		this.lastX = this.obj.x;
		this.lastY = this.obj.y;
	};
	ObjectTracker.prototype.getSpeed = function ()
	{
		if (!this.speeds.length)
			return 0;
		var i, len, sum = 0;
		for (i = 0, len = this.speeds.length; i < len; i++)
		{
			sum += this.speeds[i];
		}
		return sum / this.speeds.length;
	};
	ObjectTracker.prototype.getVelocityX = function ()
	{
		return Math.cos(this.moveAngle) * this.getSpeed();
	};
	ObjectTracker.prototype.getVelocityY = function ()
	{
		return Math.sin(this.moveAngle) * this.getSpeed();
	};
	var iOShadtouch = false;	// has had touch input on iOS to work around web audio API muting
	function C2AudioBuffer(src_, is_music)
	{
		this.src = src_;
		this.myapi = api;
		this.is_music = is_music;
		this.added_end_listener = false;
		var self = this;
		this.outNode = null;
		this.mediaSourceNode = null;
		this.panWhenReady = [];		// for web audio API positioned sounds
		this.seekWhenReady = 0;
		this.pauseWhenReady = false;
		this.supportWebAudioAPI = false;
		if (api === API_WEBAUDIO && is_music)
		{
			this.myapi = API_HTML5;
			this.outNode = createGain();
		}
		this.bufferObject = null;			// actual audio object
		this.audioData = null;				// web audio api: ajax request result (compressed audio that needs decoding)
		var request;
		switch (this.myapi) {
		case API_HTML5:
			this.bufferObject = new Audio();
			if (api === API_WEBAUDIO && context["createMediaElementSource"] && !audRuntime.isFirefox)
			{
				this.supportWebAudioAPI = true;		// can be routed through web audio api
				this.bufferObject.addEventListener("canplay", function ()
				{
					if (!self.mediaSourceNode)		// protect against this event firing twice
					{
						self.mediaSourceNode = context["createMediaElementSource"](self.bufferObject);
						self.mediaSourceNode["connect"](self.outNode);
					}
				});
			}
			this.bufferObject.autoplay = false;	// this is only a source buffer, not an instance
			this.bufferObject.preload = "auto";
			this.bufferObject.src = src_;
			break;
		case API_WEBAUDIO:
			request = new XMLHttpRequest();
			request.open("GET", src_, true);
			request.responseType = "arraybuffer";
			request.onload = function () {
				self.audioData = request.response;
				self.decodeAudioBuffer();
			};
			request.send();
			break;
		case API_PHONEGAP:
			this.bufferObject = true;
			break;
		case API_APPMOBI:
			this.bufferObject = true;
			break;
		}
	};
	C2AudioBuffer.prototype.decodeAudioBuffer = function ()
	{
		if (this.bufferObject || !this.audioData)
			return;		// audio already decoded or AJAX request not yet complete
		var self = this;
		if (context["decodeAudioData"])
		{
			context["decodeAudioData"](this.audioData, function (buffer) {
					self.bufferObject = buffer;
					var p, i, len, a;
					if (!cr.is_undefined(self.playTagWhenReady) && !silent)
					{
						if (self.panWhenReady.length)
						{
							for (i = 0, len = self.panWhenReady.length; i < len; i++)
							{
								p = self.panWhenReady[i];
								a = new C2AudioInstance(self, p.thistag);
								a.setPannerEnabled(true);
								if (typeof p.objUid !== "undefined")
								{
									p.obj = audRuntime.getObjectByUID(p.objUid);
									if (!p.obj)
										continue;
								}
								if (p.obj)
								{
									var px = cr.rotatePtAround(p.obj.x, p.obj.y, -p.obj.layer.getAngle(), listenerX, listenerY, true);
									var py = cr.rotatePtAround(p.obj.x, p.obj.y, -p.obj.layer.getAngle(), listenerX, listenerY, false);
									a.setPan(px, py, cr.to_degrees(p.obj.angle - p.obj.layer.getAngle()), p.ia, p.oa, p.og);
									a.setObject(p.obj);
								}
								else
								{
									a.setPan(p.x, p.y, p.a, p.ia, p.oa, p.og);
								}
								a.play(self.loopWhenReady, self.volumeWhenReady, self.seekWhenReady);
								if (self.pauseWhenReady)
									a.pause();
								audioInstances.push(a);
							}
							self.panWhenReady.length = 0;
						}
						else
						{
							a = new C2AudioInstance(self, self.playTagWhenReady);
							a.play(self.loopWhenReady, self.volumeWhenReady, self.seekWhenReady);
							if (self.pauseWhenReady)
								a.pause();
							audioInstances.push(a);
						}
					}
					else if (!cr.is_undefined(self.convolveWhenReady))
					{
						var convolveNode = self.convolveWhenReady.convolveNode;
						convolveNode["normalize"] = self.normalizeWhenReady;
						convolveNode["buffer"] = buffer;
					}
			});
		}
		else
		{
			this.bufferObject = context["createBuffer"](this.audioData, false);
			if (!cr.is_undefined(this.playTagWhenReady) && !silent)
			{
				var a = new C2AudioInstance(this, this.playTagWhenReady);
				a.play(this.loopWhenReady, this.volumeWhenReady, this.seekWhenReady);
				if (this.pauseWhenReady)
					a.pause();
				audioInstances.push(a);
			}
			else if (!cr.is_undefined(this.convolveWhenReady))
			{
				var convolveNode = this.convolveWhenReady.convolveNode;
				convolveNode["normalize"] = this.normalizeWhenReady;
				convolveNode["buffer"] = this.bufferObject;
			}
		}
	};
	C2AudioBuffer.prototype.isLoaded = function ()
	{
		switch (this.myapi) {
		case API_HTML5:
			return this.bufferObject["readyState"] === 4;	// HAVE_ENOUGH_DATA
		case API_WEBAUDIO:
			return !!this.audioData;			// null until AJAX request completes
		case API_PHONEGAP:
			return true;
		case API_APPMOBI:
			return true;
		}
		return false;
	};
	function C2AudioInstance(buffer_, tag_)
	{
		var self = this;
		this.tag = tag_;
		this.fresh = true;
		this.stopped = true;
		this.src = buffer_.src;
		this.buffer = buffer_;
		this.myapi = api;
		this.is_music = buffer_.is_music;
		this.playbackRate = 1;
		this.pgended = true;			// for PhoneGap only: ended flag
		this.resume_me = false;			// make sure resumes when leaving suspend
		this.is_paused = false;
		this.resume_position = 0;		// for web audio api to resume from correct playback position
		this.looping = false;
		this.is_muted = false;
		this.is_silent = false;
		this.volume = 1;
		this.mutevol = 1;
		this.startTime = audRuntime.kahanTime.sum;
		this.gainNode = null;
		this.pannerNode = null;
		this.pannerEnabled = false;
		this.objectTracker = null;
		this.panX = 0;
		this.panY = 0;
		this.panAngle = 0;
		this.panConeInner = 0;
		this.panConeOuter = 0;
		this.panConeOuterGain = 0;
		this.instanceObject = null;
		var add_end_listener = false;
		if (this.myapi === API_WEBAUDIO && this.buffer.myapi === API_HTML5 && !this.buffer.supportWebAudioAPI)
			this.myapi = API_HTML5;
		switch (this.myapi) {
		case API_HTML5:
			if (this.is_music)
			{
				this.instanceObject = buffer_.bufferObject;
				add_end_listener = !buffer_.added_end_listener;
				buffer_.added_end_listener = true;
			}
			else
			{
				this.instanceObject = new Audio();
				this.instanceObject.autoplay = false;
				this.instanceObject.src = buffer_.bufferObject.src;
				add_end_listener = true;
			}
			if (add_end_listener)
			{
				this.instanceObject.addEventListener('ended', function () {
						audTag = self.tag;
						self.stopped = true;
						audRuntime.trigger(cr.plugins_.Audio.prototype.cnds.OnEnded, audInst);
				});
			}
			break;
		case API_WEBAUDIO:
			this.gainNode = createGain();
			this.gainNode["connect"](getDestinationForTag(tag_));
			if (this.buffer.myapi === API_WEBAUDIO)
			{
				if (buffer_.bufferObject)
				{
					this.instanceObject = context["createBufferSource"]();
					this.instanceObject["buffer"] = buffer_.bufferObject;
					this.instanceObject["connect"](this.gainNode);
				}
			}
			else
			{
				this.instanceObject = this.buffer.bufferObject;		// reference the audio element
				this.buffer.outNode["connect"](this.gainNode);
			}
			break;
		case API_PHONEGAP:
			this.instanceObject = new window["Media"](appPath + this.src, null, null, function (status) {
					if (status === window["Media"]["MEDIA_STOPPED"])
					{
						self.pgended = true;
						self.stopped = true;
						audTag = self.tag;
						audRuntime.trigger(cr.plugins_.Audio.prototype.cnds.OnEnded, audInst);
					}
			});
			break;
		case API_APPMOBI:
			this.instanceObject = true;
			break;
		}
	};
	C2AudioInstance.prototype.hasEnded = function ()
	{
		switch (this.myapi) {
		case API_HTML5:
			return this.instanceObject.ended;
		case API_WEBAUDIO:
			if (this.buffer.myapi === API_WEBAUDIO)
			{
				if (!this.fresh && !this.stopped && this.instanceObject["loop"])
					return false;
				if (this.is_paused)
					return false;
				return (audRuntime.kahanTime.sum - this.startTime) > this.buffer.bufferObject["duration"];
			}
			else
				return this.instanceObject.ended;
		case API_PHONEGAP:
			return this.pgended;
		case API_APPMOBI:
			true;	// recycling an AppMobi sound does not matter because it will just do another throwaway playSound
		}
		return true;
	};
	C2AudioInstance.prototype.canBeRecycled = function ()
	{
		if (this.fresh || this.stopped)
			return true;		// not yet used or is not playing
		return this.hasEnded();
	};
	C2AudioInstance.prototype.setPannerEnabled = function (enable_)
	{
		if (api !== API_WEBAUDIO)
			return;
		if (!this.pannerEnabled && enable_)
		{
			if (!this.gainNode)
				return;
			if (!this.pannerNode)
			{
				this.pannerNode = context["createPanner"]();
				if (typeof this.pannerNode["panningModel"] === "number")
					this.pannerNode["panningModel"] = panningModel;
				else
					this.pannerNode["panningModel"] = ["equalpower", "HRTF", "soundfield"][panningModel];
				if (typeof this.pannerNode["distanceModel"] === "number")
					this.pannerNode["distanceModel"] = distanceModel;
				else
					this.pannerNode["distanceModel"] = ["linear", "inverse", "exponential"][distanceModel];
				this.pannerNode["refDistance"] = refDistance;
				this.pannerNode["maxDistance"] = maxDistance;
				this.pannerNode["rolloffFactor"] = rolloffFactor;
			}
			this.gainNode["disconnect"]();
			this.gainNode["connect"](this.pannerNode);
			this.pannerNode["connect"](getDestinationForTag(this.tag));
			this.pannerEnabled = true;
		}
		else if (this.pannerEnabled && !enable_)
		{
			if (!this.gainNode)
				return;
			this.pannerNode["disconnect"]();
			this.gainNode["disconnect"]();
			this.gainNode["connect"](getDestinationForTag(this.tag));
			this.pannerEnabled = false;
		}
	};
	C2AudioInstance.prototype.setPan = function (x, y, angle, innerangle, outerangle, outergain)
	{
		if (!this.pannerEnabled || api !== API_WEBAUDIO)
			return;
		this.pannerNode["setPosition"](x, y, 0);
		this.pannerNode["setOrientation"](Math.cos(cr.to_radians(angle)), Math.sin(cr.to_radians(angle)), 0);
		this.pannerNode["coneInnerAngle"] = innerangle;
		this.pannerNode["coneOuterAngle"] = outerangle;
		this.pannerNode["coneOuterGain"] = outergain;
		this.panX = x;
		this.panY = y;
		this.panAngle = angle;
		this.panConeInner = innerangle;
		this.panConeOuter = outerangle;
		this.panConeOuterGain = outergain;
	};
	C2AudioInstance.prototype.setObject = function (o)
	{
		if (!this.pannerEnabled || api !== API_WEBAUDIO)
			return;
		if (!this.objectTracker)
			this.objectTracker = new ObjectTracker();
		this.objectTracker.setObject(o);
	};
	C2AudioInstance.prototype.tick = function (dt)
	{
		if (!this.pannerEnabled || api !== API_WEBAUDIO || !this.objectTracker || !this.objectTracker.hasObject() || !this.isPlaying())
		{
			return;
		}
		this.objectTracker.tick(dt);
		var inst = this.objectTracker.obj;
		var px = cr.rotatePtAround(inst.x, inst.y, -inst.layer.getAngle(), listenerX, listenerY, true);
		var py = cr.rotatePtAround(inst.x, inst.y, -inst.layer.getAngle(), listenerX, listenerY, false);
		this.pannerNode["setPosition"](px, py, 0);
		var a = 0;
		if (typeof this.objectTracker.obj.angle !== "undefined")
		{
			a = inst.angle - inst.layer.getAngle();
			this.pannerNode["setOrientation"](Math.cos(a), Math.sin(a), 0);
		}
		px = cr.rotatePtAround(this.objectTracker.getVelocityX(), this.objectTracker.getVelocityY(), -inst.layer.getAngle(), 0, 0, true);
		py = cr.rotatePtAround(this.objectTracker.getVelocityX(), this.objectTracker.getVelocityY(), -inst.layer.getAngle(), 0, 0, false);
		this.pannerNode["setVelocity"](px, py, 0);
	};
	C2AudioInstance.prototype.play = function (looping, vol, fromPosition)
	{
		var instobj = this.instanceObject;
		this.looping = looping;
		this.volume = vol;
		var seekPos = fromPosition || 0;
		switch (this.myapi) {
		case API_HTML5:
			if (instobj.playbackRate !== 1.0)
				instobj.playbackRate = 1.0;
			if (instobj.volume !== vol * masterVolume)
				instobj.volume = vol * masterVolume;
			if (instobj.loop !== looping)
				instobj.loop = looping;
			if (instobj.muted)
				instobj.muted = false;
			if (instobj.currentTime !== seekPos)
			{
				try {
					instobj.currentTime = seekPos;
				}
				catch (err)
				{
;
				}
			}
			if (this.is_music && isMusicWorkaround && !audRuntime.isInUserInputEvent)
				musicPlayNextTouch.push(this);
			else
				this.instanceObject.play();
			break;
		case API_WEBAUDIO:
			this.muted = false;
			this.mutevol = 1;
			if (this.buffer.myapi === API_WEBAUDIO)
			{
				if (!this.fresh)
				{
					this.instanceObject = context["createBufferSource"]();
					this.instanceObject["buffer"] = this.buffer.bufferObject;
					this.instanceObject["connect"](this.gainNode);
				}
				this.instanceObject.loop = looping;
				this.gainNode["gain"]["value"] = vol * masterVolume;
				if (seekPos === 0)
					startSource(this.instanceObject);
				else
					startSourceAt(this.instanceObject, seekPos, this.getDuration());
			}
			else
			{
				if (instobj.playbackRate !== 1.0)
					instobj.playbackRate = 1.0;
				if (instobj.loop !== looping)
					instobj.loop = looping;
				this.gainNode["gain"]["value"] = vol * masterVolume;
				if (instobj.currentTime !== seekPos)
				{
					try {
						instobj.currentTime = seekPos;
					}
					catch (err)
					{
;
					}
				}
				if (this.is_music && isMusicWorkaround && !audRuntime.isInUserInputEvent)
					musicPlayNextTouch.push(this);
				else
					instobj.play();
			}
			break;
		case API_PHONEGAP:
			if ((!this.fresh && this.stopped) || seekPos !== 0)
				instobj["seekTo"](seekPos);
			instobj["play"]();
			this.pgended = false;
			break;
		case API_APPMOBI:
			if (audRuntime.isDirectCanvas)
				AppMobi["context"]["playSound"](this.src, looping);
			else
				AppMobi["player"]["playSound"](this.src, looping);
			break;
		}
		this.playbackRate = 1;
		this.startTime = audRuntime.kahanTime.sum - seekPos;
		this.fresh = false;
		this.stopped = false;
		this.is_paused = false;
	};
	C2AudioInstance.prototype.stop = function ()
	{
		switch (this.myapi) {
		case API_HTML5:
			if (!this.instanceObject.paused)
				this.instanceObject.pause();
			break;
		case API_WEBAUDIO:
			if (this.buffer.myapi === API_WEBAUDIO)
				stopSource(this.instanceObject);
			else
			{
				if (!this.instanceObject.paused)
					this.instanceObject.pause();
			}
			break;
		case API_PHONEGAP:
			this.instanceObject["stop"]();
			break;
		case API_APPMOBI:
			if (audRuntime.isDirectCanvas)
				AppMobi["context"]["stopSound"](this.src);
			break;
		}
		this.stopped = true;
		this.is_paused = false;
	};
	C2AudioInstance.prototype.pause = function ()
	{
		if (this.fresh || this.stopped || this.hasEnded() || this.is_paused)
			return;
		switch (this.myapi) {
		case API_HTML5:
			if (!this.instanceObject.paused)
				this.instanceObject.pause();
			break;
		case API_WEBAUDIO:
			if (this.buffer.myapi === API_WEBAUDIO)
			{
				this.resume_position = this.getPlaybackTime();
				if (this.looping)
					this.resume_position = this.resume_position % this.getDuration();
				stopSource(this.instanceObject);
			}
			else
			{
				if (!this.instanceObject.paused)
					this.instanceObject.pause();
			}
			break;
		case API_PHONEGAP:
			this.instanceObject["pause"]();
			break;
		case API_APPMOBI:
			if (audRuntime.isDirectCanvas)
				AppMobi["context"]["stopSound"](this.src);
			break;
		}
		this.is_paused = true;
	};
	C2AudioInstance.prototype.resume = function ()
	{
		if (this.fresh || this.stopped || this.hasEnded() || !this.is_paused)
			return;
		switch (this.myapi) {
		case API_HTML5:
			this.instanceObject.play();
			break;
		case API_WEBAUDIO:
			if (this.buffer.myapi === API_WEBAUDIO)
			{
				this.instanceObject = context["createBufferSource"]();
				this.instanceObject["buffer"] = this.buffer.bufferObject;
				this.instanceObject["connect"](this.gainNode);
				this.instanceObject.loop = this.looping;
				this.gainNode["gain"]["value"] = masterVolume * this.volume * this.mutevol;
				this.startTime = audRuntime.kahanTime.sum - this.resume_position;
				startSourceAt(this.instanceObject, this.resume_position, this.getDuration());
			}
			else
			{
				this.instanceObject.play();
			}
			break;
		case API_PHONEGAP:
			this.instanceObject["play"]();
			break;
		case API_APPMOBI:
			if (audRuntime.isDirectCanvas)
				AppMobi["context"]["resumeSound"](this.src);
			break;
		}
		this.is_paused = false;
	};
	C2AudioInstance.prototype.seek = function (pos)
	{
		if (this.fresh || this.stopped || this.hasEnded())
			return;
		switch (this.myapi) {
		case API_HTML5:
			try {
				this.instanceObject.currentTime = pos;
			}
			catch (e) {}
			break;
		case API_WEBAUDIO:
			if (this.buffer.myapi === API_WEBAUDIO)
			{
				if (this.is_paused)
					this.resume_position = pos;
				else
				{
					this.pause();
					this.resume_position = pos;
					this.resume();
				}
			}
			else
			{
				try {
					this.instanceObject.currentTime = pos;
				}
				catch (e) {}
			}
			break;
		case API_PHONEGAP:
			break;
		case API_APPMOBI:
			if (audRuntime.isDirectCanvas)
				AppMobi["context"]["seekSound"](this.src, pos);
			break;
		}
	};
	C2AudioInstance.prototype.reconnect = function (toNode)
	{
		if (this.myapi !== API_WEBAUDIO)
			return;
		if (this.pannerEnabled)
		{
			this.pannerNode["disconnect"]();
			this.pannerNode["connect"](toNode);
		}
		else
		{
			this.gainNode["disconnect"]();
			this.gainNode["connect"](toNode);
		}
	};
	C2AudioInstance.prototype.getDuration = function ()
	{
		switch (this.myapi) {
		case API_HTML5:
			if (typeof this.instanceObject.duration !== "undefined")
				return this.instanceObject.duration;
			else
				return 0;
		case API_WEBAUDIO:
			return this.buffer.bufferObject["duration"];
		case API_PHONEGAP:
			return this.instanceObject["getDuration"]();
		case API_APPMOBI:
			if (audRuntime.isDirectCanvas)
				return AppMobi["context"]["getDurationSound"](this.src);
			else
				return 0;
		}
		return 0;
	};
	C2AudioInstance.prototype.getPlaybackTime = function ()
	{
		var duration = this.getDuration();
		var ret = 0;
		switch (this.myapi) {
		case API_HTML5:
			if (typeof this.instanceObject.currentTime !== "undefined")
				ret = this.instanceObject.currentTime;
			break;
		case API_WEBAUDIO:
			if (this.buffer.myapi === API_WEBAUDIO)
			{
				if (this.is_paused)
					return this.resume_position;
				else
					ret = audRuntime.kahanTime.sum - this.startTime;
			}
			else if (typeof this.instanceObject.currentTime !== "undefined")
				ret = this.instanceObject.currentTime;
			break;
		case API_PHONEGAP:
			break;
		case API_APPMOBI:
			if (audRuntime.isDirectCanvas)
				ret = AppMobi["context"]["getPlaybackTimeSound"](this.src);
			break;
		}
		if (!this.looping && ret > duration)
			ret = duration;
		return ret;
	};
	C2AudioInstance.prototype.isPlaying = function ()
	{
		return !this.is_paused && !this.fresh && !this.stopped && !this.hasEnded();
	};
	C2AudioInstance.prototype.setVolume = function (v)
	{
		this.volume = v;
		this.updateVolume();
	};
	C2AudioInstance.prototype.updateVolume = function ()
	{
		var volToSet = this.volume * masterVolume;
		switch (this.myapi) {
		case API_HTML5:
			if (this.instanceObject.volume && this.instanceObject.volume !== volToSet)
				this.instanceObject.volume = volToSet;
			break;
		case API_WEBAUDIO:
			this.gainNode["gain"]["value"] = volToSet * this.mutevol;
			break;
		case API_PHONEGAP:
			break;
		case API_APPMOBI:
			break;
		}
	};
	C2AudioInstance.prototype.getVolume = function ()
	{
		return this.volume;
	};
	C2AudioInstance.prototype.doSetMuted = function (m)
	{
		switch (this.myapi) {
		case API_HTML5:
			if (this.instanceObject.muted !== !!m)
				this.instanceObject.muted = !!m;
			break;
		case API_WEBAUDIO:
			this.mutevol = (m ? 0 : 1);
			this.gainNode["gain"]["value"] = masterVolume * this.volume * this.mutevol;
			break;
		case API_PHONEGAP:
			break;
		case API_APPMOBI:
			break;
		}
	};
	C2AudioInstance.prototype.setMuted = function (m)
	{
		this.is_muted = !!m;
		this.doSetMuted(this.is_muted || this.is_silent);
	};
	C2AudioInstance.prototype.setSilent = function (m)
	{
		this.is_silent = !!m;
		this.doSetMuted(this.is_muted || this.is_silent);
	};
	C2AudioInstance.prototype.setLooping = function (l)
	{
		this.looping = l;
		switch (this.myapi) {
		case API_HTML5:
			if (this.instanceObject.loop !== !!l)
				this.instanceObject.loop = !!l;
			break;
		case API_WEBAUDIO:
			if (this.instanceObject.loop !== !!l)
				this.instanceObject.loop = !!l;
			break;
		case API_PHONEGAP:
			break;
		case API_APPMOBI:
			if (audRuntime.isDirectCanvas)
				AppMobi["context"]["setLoopingSound"](this.src, l);
			break;
		}
	};
	C2AudioInstance.prototype.setPlaybackRate = function (r)
	{
		this.playbackRate = r;
		this.updatePlaybackRate();
	};
	C2AudioInstance.prototype.updatePlaybackRate = function ()
	{
		var r = this.playbackRate;
		if ((timescale_mode === 1 && !this.is_music) || timescale_mode === 2)
			r *= audRuntime.timescale;
		switch (this.myapi) {
		case API_HTML5:
			if (this.instanceObject.playbackRate !== r)
				this.instanceObject.playbackRate = r;
			break;
		case API_WEBAUDIO:
			if (this.buffer.myapi === API_WEBAUDIO)
			{
				if (this.instanceObject["playbackRate"]["value"] !== r)
					this.instanceObject["playbackRate"]["value"] = r;
			}
			else
			{
				if (this.instanceObject.playbackRate !== r)
					this.instanceObject.playbackRate = r;
			}
			break;
		case API_PHONEGAP:
			break;
		case API_APPMOBI:
			break;
		}
	};
	C2AudioInstance.prototype.setSuspended = function (s)
	{
		switch (this.myapi) {
		case API_HTML5:
			if (s)
			{
				if (this.isPlaying())
				{
					this.instanceObject["pause"]();
					this.resume_me = true;
				}
				else
					this.resume_me = false;
			}
			else
			{
				if (this.resume_me)
					this.instanceObject["play"]();
			}
			break;
		case API_WEBAUDIO:
			if (s)
			{
				if (this.isPlaying())
				{
					if (this.buffer.myapi === API_WEBAUDIO)
					{
						this.resume_position = this.getPlaybackTime();
						if (this.looping)
							this.resume_position = this.resume_position % this.getDuration();
						stopSource(this.instanceObject);
					}
					else
						this.instanceObject["pause"]();
					this.resume_me = true;
				}
				else
					this.resume_me = false;
			}
			else
			{
				if (this.resume_me)
				{
					if (this.buffer.myapi === API_WEBAUDIO)
					{
						this.instanceObject = context["createBufferSource"]();
						this.instanceObject["buffer"] = this.buffer.bufferObject;
						this.instanceObject["connect"](this.gainNode);
						this.instanceObject.loop = this.looping;
						this.gainNode["gain"]["value"] = masterVolume * this.volume * this.mutevol;
						this.startTime = audRuntime.kahanTime.sum - this.resume_position;
						startSourceAt(this.instanceObject, this.resume_position, this.getDuration());
					}
					else
					{
						this.instanceObject["play"]();
					}
				}
			}
			break;
		case API_PHONEGAP:
			if (s)
			{
				if (this.isPlaying())
				{
					this.instanceObject["pause"]();
					this.resume_me = true;
				}
				else
					this.resume_me = false;
			}
			else
			{
				if (this.resume_me)
					this.instanceObject["play"]();
			}
			break;
		case API_APPMOBI:
			break;
		}
	};
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
		audRuntime = this.runtime;
		audInst = this;
		this.listenerTracker = null;
		this.listenerZ = -600;
		if ((this.runtime.isiOS || (this.runtime.isAndroid && (this.runtime.isChrome || this.runtime.isAndroidStockBrowser))) && !this.runtime.isCrosswalk && !this.runtime.isDomFree)
		{
			isMusicWorkaround = true;
		}
		context = null;
		if (typeof AudioContext !== "undefined")
		{
			api = API_WEBAUDIO;
			context = new AudioContext();
		}
		else if (typeof webkitAudioContext !== "undefined")
		{
			api = API_WEBAUDIO;
			context = new webkitAudioContext();
		}
		if ((this.runtime.isiOS && api === API_WEBAUDIO) || isMusicWorkaround)
		{
			document.addEventListener("touchstart", function ()
			{
				var i, len, m;
				if (!iOShadtouch && context)
				{
					var buffer = context["createBuffer"](1, 1, 22050);
					var source = context["createBufferSource"]();
					source["buffer"] = buffer;
					source["connect"](context["destination"]);
					startSource(source);
					iOShadtouch = true;
				}
				if (isMusicWorkaround)
				{
					if (!silent)
					{
						for (i = 0, len = musicPlayNextTouch.length; i < len; ++i)
						{
							m = musicPlayNextTouch[i];
							if (!m.stopped && !m.is_paused)
								m.instanceObject.play();
						}
					}
					musicPlayNextTouch.length = 0;
				}
			}, true);
		}
		if (api !== API_WEBAUDIO)
		{
			if (this.runtime.isPhoneGap)
				api = API_PHONEGAP;
			else if (this.runtime.isAppMobi)
				api = API_APPMOBI;
		}
		if (api === API_PHONEGAP)
		{
			appPath = location.href;
			var i = appPath.lastIndexOf("/");
			if (i > -1)
				appPath = appPath.substr(0, i + 1);
			appPath = appPath.replace("file://", "");
		}
		if (this.runtime.isSafari && this.runtime.isWindows && typeof Audio === "undefined")
		{
			alert("It looks like you're using Safari for Windows without Quicktime.  Audio cannot be played until Quicktime is installed.");
			this.runtime.DestroyInstance(this);
		}
		else
		{
			if (this.runtime.isDirectCanvas)
				useOgg = this.runtime.isAndroid;		// AAC on iOS, OGG on Android
			else
			{
				try {
					useOgg = !!(new Audio().canPlayType('audio/ogg; codecs="vorbis"'));
				}
				catch (e)
				{
					useOgg = false;
				}
			}
			switch (api) {
			case API_HTML5:
;
				break;
			case API_WEBAUDIO:
;
				break;
			case API_PHONEGAP:
;
				break;
			case API_APPMOBI:
;
				break;
			default:
;
			}
			this.runtime.tickMe(this);
		}
	};
	var instanceProto = pluginProto.Instance.prototype;
	instanceProto.onCreate = function ()
	{
		timescale_mode = this.properties[0];	// 0 = off, 1 = sounds only, 2 = all
		this.saveload = this.properties[1];		// 0 = all, 1 = sounds only, 2 = music only, 3 = none
		panningModel = this.properties[2];		// 0 = equalpower, 1 = hrtf, 3 = soundfield
		distanceModel = this.properties[3];		// 0 = linear, 1 = inverse, 2 = exponential
		this.listenerZ = -this.properties[4];
		refDistance = this.properties[5];
		maxDistance = this.properties[6];
		rolloffFactor = this.properties[7];
		this.listenerTracker = new ObjectTracker();
		if (api === API_WEBAUDIO)
		{
			context["listener"]["speedOfSound"] = this.properties[8];
			context["listener"]["dopplerFactor"] = this.properties[9];
			context["listener"]["setPosition"](this.runtime.draw_width / 2, this.runtime.draw_height / 2, this.listenerZ);
			context["listener"]["setOrientation"](0, 0, 1, 0, -1, 0);
			window["c2OnAudioMicStream"] = function (localMediaStream, tag)
			{
				if (micSource)
					micSource["disconnect"]();
				micTag = tag.toLowerCase();
				micSource = context["createMediaStreamSource"](localMediaStream);
				micSource["connect"](getDestinationForTag(micTag));
			};
		}
		this.runtime.addSuspendCallback(function(s)
		{
			audInst.onSuspend(s);
		});
		var self = this;
		this.runtime.addDestroyCallback(function (inst)
		{
			self.onInstanceDestroyed(inst);
		});
	};
	instanceProto.onInstanceDestroyed = function (inst)
	{
		var i, len, a;
		for (i = 0, len = audioInstances.length; i < len; i++)
		{
			a = audioInstances[i];
			if (a.objectTracker)
			{
				if (a.objectTracker.obj === inst)
				{
					a.objectTracker.obj = null;
					if (a.pannerEnabled && a.isPlaying() && a.looping)
						a.stop();
				}
			}
		}
		if (this.listenerTracker.obj === inst)
			this.listenerTracker.obj = null;
	};
	instanceProto.saveToJSON = function ()
	{
		var o = {
			"silent": silent,
			"masterVolume": masterVolume,
			"listenerZ": this.listenerZ,
			"listenerUid": this.listenerTracker.hasObject() ? this.listenerTracker.obj.uid : -1,
			"playing": [],
			"effects": {}
		};
		var playingarr = o["playing"];
		var i, len, a, d, p, panobj, playbackTime;
		for (i = 0, len = audioInstances.length; i < len; i++)
		{
			a = audioInstances[i];
			if (!a.isPlaying())
				continue;				// no need to save stopped sounds
			if (this.saveload === 3)	// not saving/loading any sounds/music
				continue;
			if (a.is_music && this.saveload === 1)	// not saving/loading music
				continue;
			if (!a.is_music && this.saveload === 2)	// not saving/loading sound
				continue;
			playbackTime = a.getPlaybackTime();
			if (a.looping)
				playbackTime = playbackTime % a.getDuration();
			d = {
				"tag": a.tag,
				"buffersrc": a.buffer.src,
				"is_music": a.is_music,
				"playbackTime": playbackTime,
				"volume": a.volume,
				"looping": a.looping,
				"muted": a.is_muted,
				"playbackRate": a.playbackRate,
				"paused": a.is_paused,
				"resume_position": a.resume_position
			};
			if (a.pannerEnabled)
			{
				d["pan"] = {};
				panobj = d["pan"];
				if (a.objectTracker && a.objectTracker.hasObject())
				{
					panobj["objUid"] = a.objectTracker.obj.uid;
				}
				else
				{
					panobj["x"] = a.panX;
					panobj["y"] = a.panY;
					panobj["a"] = a.panAngle;
				}
				panobj["ia"] = a.panConeInner;
				panobj["oa"] = a.panConeOuter;
				panobj["og"] = a.panConeOuterGain;
			}
			playingarr.push(d);
		}
		var fxobj = o["effects"];
		var fxarr;
		for (p in effects)
		{
			if (effects.hasOwnProperty(p))
			{
				fxarr = [];
				for (i = 0, len = effects[p].length; i < len; i++)
				{
					fxarr.push({ "type": effects[p][i].type, "params": effects[p][i].params });
				}
				fxobj[p] = fxarr;
			}
		}
		return o;
	};
	var objectTrackerUidsToLoad = [];
	instanceProto.loadFromJSON = function (o)
	{
		var setSilent = o["silent"];
		masterVolume = o["masterVolume"];
		this.listenerZ = o["listenerZ"];
		this.listenerTracker.setObject(null);
		var listenerUid = o["listenerUid"];
		if (listenerUid !== -1)
		{
			this.listenerTracker.loadUid = listenerUid;
			objectTrackerUidsToLoad.push(this.listenerTracker);
		}
		var playingarr = o["playing"];
		var i, len, d, src, is_music, tag, playbackTime, looping, vol, b, a, p, pan, panObjUid;
		if (this.saveload !== 3)
		{
			for (i = 0, len = audioInstances.length; i < len; i++)
			{
				a = audioInstances[i];
				if (a.is_music && this.saveload === 1)
					continue;		// only saving/loading sound: leave music playing
				if (!a.is_music && this.saveload === 2)
					continue;		// only saving/loading music: leave sound playing
				a.stop();
			}
		}
		var fxarr, fxtype, fxparams, fx;
		for (p in effects)
		{
			if (effects.hasOwnProperty(p))
			{
				for (i = 0, len = effects[p].length; i < len; i++)
					effects[p][i].remove();
			}
		}
		cr.wipe(effects);
		for (p in o["effects"])
		{
			if (o["effects"].hasOwnProperty(p))
			{
				fxarr = o["effects"][p];
				for (i = 0, len = fxarr.length; i < len; i++)
				{
					fxtype = fxarr[i]["type"];
					fxparams = fxarr[i]["params"];
					switch (fxtype) {
					case "filter":
						addEffectForTag(p, new FilterEffect(fxparams[0], fxparams[1], fxparams[2], fxparams[3], fxparams[4], fxparams[5]));
						break;
					case "delay":
						addEffectForTag(p, new DelayEffect(fxparams[0], fxparams[1], fxparams[2]));
						break;
					case "convolve":
						src = fxparams[2];
						b = this.getAudioBuffer(src, false);
						if (b.bufferObject)
						{
							fx = new ConvolveEffect(b.bufferObject, fxparams[0], fxparams[1], src);
						}
						else
						{
							fx = new ConvolveEffect(null, fxparams[0], fxparams[1], src);
							b.normalizeWhenReady = fxparams[0];
							b.convolveWhenReady = fx;
						}
						addEffectForTag(p, fx);
						break;
					case "flanger":
						addEffectForTag(p, new FlangerEffect(fxparams[0], fxparams[1], fxparams[2], fxparams[3], fxparams[4]));
						break;
					case "phaser":
						addEffectForTag(p, new PhaserEffect(fxparams[0], fxparams[1], fxparams[2], fxparams[3], fxparams[4], fxparams[5]));
						break;
					case "gain":
						addEffectForTag(p, new GainEffect(fxparams[0]));
						break;
					case "tremolo":
						addEffectForTag(p, new TremoloEffect(fxparams[0], fxparams[1]));
						break;
					case "ringmod":
						addEffectForTag(p, new RingModulatorEffect(fxparams[0], fxparams[1]));
						break;
					case "distortion":
						addEffectForTag(p, new DistortionEffect(fxparams[0], fxparams[1], fxparams[2], fxparams[3], fxparams[4]));
						break;
					case "compressor":
						addEffectForTag(p, new CompressorEffect(fxparams[0], fxparams[1], fxparams[2], fxparams[3], fxparams[4]));
						break;
					case "analyser":
						addEffectForTag(p, new AnalyserEffect(fxparams[0], fxparams[1]));
						break;
					}
				}
			}
		}
		for (i = 0, len = playingarr.length; i < len; i++)
		{
			if (this.saveload === 3)	// not saving/loading any sounds/music
				continue;
			d = playingarr[i];
			src = d["buffersrc"];
			is_music = d["is_music"];
			tag = d["tag"];
			playbackTime = d["playbackTime"];
			looping = d["looping"];
			vol = d["volume"];
			pan = d["pan"];
			panObjUid = (pan && pan.hasOwnProperty("objUid")) ? pan["objUid"] : -1;
			if (is_music && this.saveload === 1)	// not saving/loading music
				continue;
			if (!is_music && this.saveload === 2)	// not saving/loading sound
				continue;
			a = this.getAudioInstance(src, tag, is_music, looping, vol);
			if (!a)
			{
				b = this.getAudioBuffer(src, is_music);
				b.seekWhenReady = playbackTime;
				b.pauseWhenReady = d["paused"];
				if (pan)
				{
					if (panObjUid !== -1)
					{
						b.panWhenReady.push({ objUid: panObjUid, ia: pan["ia"], oa: pan["oa"], og: pan["og"], thistag: tag });
					}
					else
					{
						b.panWhenReady.push({ x: pan["x"], y: pan["y"], a: pan["a"], ia: pan["ia"], oa: pan["oa"], og: pan["og"], thistag: tag });
					}
				}
				continue;
			}
			a.resume_position = d["resume_position"];
			a.setPannerEnabled(!!pan);
			a.play(looping, vol, playbackTime);
			a.updatePlaybackRate();
			a.updateVolume();
			a.doSetMuted(a.is_muted || a.is_silent);
			if (d["paused"])
				a.pause();
			if (d["muted"])
				a.setMuted(true);
			a.doSetMuted(a.is_muted || a.is_silent);
			if (pan)
			{
				if (panObjUid !== -1)
				{
					a.objectTracker = a.objectTracker || new ObjectTracker();
					a.objectTracker.loadUid = panObjUid;
					objectTrackerUidsToLoad.push(a.objectTracker);
				}
				else
				{
					a.setPan(pan["x"], pan["y"], pan["a"], pan["ia"], pan["oa"], pan["og"]);
				}
			}
		}
		if (setSilent && !silent)			// setting silent
		{
			for (i = 0, len = audioInstances.length; i < len; i++)
				audioInstances[i].setSilent(true);
			silent = true;
		}
		else if (!setSilent && silent)		// setting not silent
		{
			for (i = 0, len = audioInstances.length; i < len; i++)
				audioInstances[i].setSilent(false);
			silent = false;
		}
	};
	instanceProto.afterLoad = function ()
	{
		var i, len, ot, inst;
		for (i = 0, len = objectTrackerUidsToLoad.length; i < len; i++)
		{
			ot = objectTrackerUidsToLoad[i];
			inst = this.runtime.getObjectByUID(ot.loadUid);
			ot.setObject(inst);
			ot.loadUid = -1;
			if (inst)
			{
				listenerX = inst.x;
				listenerY = inst.y;
			}
		}
		objectTrackerUidsToLoad.length = 0;
	};
	instanceProto.onSuspend = function (s)
	{
		var i, len;
		for (i = 0, len = audioInstances.length; i < len; i++)
			audioInstances[i].setSuspended(s);
	};
	instanceProto.tick = function ()
	{
		var dt = this.runtime.dt;
		var i, len, a;
		for (i = 0, len = audioInstances.length; i < len; i++)
		{
			a = audioInstances[i];
			a.tick(dt);
			if (a.myapi !== API_HTML5 && a.myapi !== API_APPMOBI)
			{
				if (!a.fresh && !a.stopped && a.hasEnded())
				{
					a.stopped = true;
					audTag = a.tag;
					audRuntime.trigger(cr.plugins_.Audio.prototype.cnds.OnEnded, audInst);
				}
			}
			if (timescale_mode !== 0)
				a.updatePlaybackRate();
		}
		var p, arr, f;
		for (p in effects)
		{
			if (effects.hasOwnProperty(p))
			{
				arr = effects[p];
				for (i = 0, len = arr.length; i < len; i++)
				{
					f = arr[i];
					if (f.tick)
						f.tick();
				}
			}
		}
		if (api === API_WEBAUDIO && this.listenerTracker.hasObject())
		{
			this.listenerTracker.tick(dt);
			listenerX = this.listenerTracker.obj.x;
			listenerY = this.listenerTracker.obj.y;
			context["listener"]["setPosition"](this.listenerTracker.obj.x, this.listenerTracker.obj.y, this.listenerZ);
			context["listener"]["setVelocity"](this.listenerTracker.getVelocityX(), this.listenerTracker.getVelocityY(), 0);
		}
	};
	instanceProto.getAudioBuffer = function (src_, is_music)
	{
		var i, len, a, ret = null, j, k, lenj, ai;
		for (i = 0, len = audioBuffers.length; i < len; i++)
		{
			a = audioBuffers[i];
			if (a.src === src_)
			{
				ret = a;
				break;
			}
		}
		if (!ret)
		{
			ret = new C2AudioBuffer(src_, is_music);
			audioBuffers.push(ret);
		}
		return ret;
	};
	instanceProto.getAudioInstance = function (src_, tag, is_music, looping, vol)
	{
		var i, len, a;
		for (i = 0, len = audioInstances.length; i < len; i++)
		{
			a = audioInstances[i];
			if (a.src === src_ && (a.canBeRecycled() || is_music))
			{
				a.tag = tag;
				return a;
			}
		}
		var b = this.getAudioBuffer(src_, is_music);
		if (!b.bufferObject)
		{
			if (tag !== "<preload>")
			{
				b.playTagWhenReady = tag;
				b.loopWhenReady = looping;
				b.volumeWhenReady = vol;
			}
			return null;
		}
		a = new C2AudioInstance(b, tag);
		audioInstances.push(a);
		return a;
	};
	var taggedAudio = [];
	function getAudioByTag(tag)
	{
		taggedAudio.length = 0;
		if (!tag.length)
		{
			if (!lastAudio || lastAudio.hasEnded())
				return;
			else
			{
				taggedAudio.length = 1;
				taggedAudio[0] = lastAudio;
				return;
			}
		}
		var i, len, a;
		for (i = 0, len = audioInstances.length; i < len; i++)
		{
			a = audioInstances[i];
			if (cr.equals_nocase(tag, a.tag))
				taggedAudio.push(a);
		}
	};
	function reconnectEffects(tag)
	{
		var i, len, arr, n, toNode = context["destination"];
		if (effects.hasOwnProperty(tag))
		{
			arr = effects[tag];
			if (arr.length)
			{
				toNode = arr[0].getInputNode();
				for (i = 0, len = arr.length; i < len; i++)
				{
					n = arr[i];
					if (i + 1 === len)
						n.connectTo(context["destination"]);
					else
						n.connectTo(arr[i + 1].getInputNode());
				}
			}
		}
		getAudioByTag(tag);
		for (i = 0, len = taggedAudio.length; i < len; i++)
			taggedAudio[i].reconnect(toNode);
		if (micSource && micTag === tag)
		{
			micSource["disconnect"]();
			micSource["connect"](toNode);
		}
	};
	function addEffectForTag(tag, fx)
	{
		if (!effects.hasOwnProperty(tag))
			effects[tag] = [fx];
		else
			effects[tag].push(fx);
		reconnectEffects(tag);
	};
	function Cnds() {};
	Cnds.prototype.OnEnded = function (t)
	{
		return cr.equals_nocase(audTag, t);
	};
	Cnds.prototype.PreloadsComplete = function ()
	{
		var i, len;
		for (i = 0, len = audioBuffers.length; i < len; i++)
		{
			if (!audioBuffers[i].isLoaded())
				return false;
		}
		return true;
	};
	Cnds.prototype.AdvancedAudioSupported = function ()
	{
		return api === API_WEBAUDIO;
	};
	Cnds.prototype.IsSilent = function ()
	{
		return silent;
	};
	Cnds.prototype.IsAnyPlaying = function ()
	{
		var i, len;
		for (i = 0, len = audioInstances.length; i < len; i++)
		{
			if (audioInstances[i].isPlaying())
				return true;
		}
		return false;
	};
	Cnds.prototype.IsTagPlaying = function (tag)
	{
		getAudioByTag(tag);
		var i, len;
		for (i = 0, len = taggedAudio.length; i < len; i++)
		{
			if (taggedAudio[i].isPlaying())
				return true;
		}
		return false;
	};
	pluginProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.Play = function (file, looping, vol, tag)
	{
		if (silent)
			return;
		var v = dbToLinear(vol);
		var is_music = file[1];
		var src = this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a");
		lastAudio = this.getAudioInstance(src, tag, is_music, looping!==0, v);
		if (!lastAudio)
			return;
		lastAudio.setPannerEnabled(false);
		lastAudio.play(looping!==0, v);
	};
	Acts.prototype.PlayAtPosition = function (file, looping, vol, x_, y_, angle_, innerangle_, outerangle_, outergain_, tag)
	{
		if (silent)
			return;
		var v = dbToLinear(vol);
		var is_music = file[1];
		var src = this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a");
		lastAudio = this.getAudioInstance(src, tag, is_music, looping!==0, v);
		if (!lastAudio)
		{
			var b = this.getAudioBuffer(src, is_music);
			b.panWhenReady.push({ x: x_, y: y_, a: angle_, ia: innerangle_, oa: outerangle_, og: dbToLinear(outergain_), thistag: tag });
			return;
		}
		lastAudio.setPannerEnabled(true);
		lastAudio.setPan(x_, y_, angle_, innerangle_, outerangle_, dbToLinear(outergain_));
		lastAudio.play(looping!==0, v);
	};
	Acts.prototype.PlayAtObject = function (file, looping, vol, obj, innerangle, outerangle, outergain, tag)
	{
		if (silent || !obj)
			return;
		var inst = obj.getFirstPicked();
		if (!inst)
			return;
		var v = dbToLinear(vol);
		var is_music = file[1];
		var src = this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a");
		lastAudio = this.getAudioInstance(src, tag, is_music, looping!==0, v);
		if (!lastAudio)
		{
			var b = this.getAudioBuffer(src, is_music);
			b.panWhenReady.push({ obj: inst, ia: innerangle, oa: outerangle, og: dbToLinear(outergain), thistag: tag });
			return;
		}
		lastAudio.setPannerEnabled(true);
		var px = cr.rotatePtAround(inst.x, inst.y, -inst.layer.getAngle(), listenerX, listenerY, true);
		var py = cr.rotatePtAround(inst.x, inst.y, -inst.layer.getAngle(), listenerX, listenerY, false);
		lastAudio.setPan(px, py, cr.to_degrees(inst.angle - inst.layer.getAngle()), innerangle, outerangle, dbToLinear(outergain));
		lastAudio.setObject(inst);
		lastAudio.play(looping!==0, v);
	};
	Acts.prototype.PlayByName = function (folder, filename, looping, vol, tag)
	{
		if (silent)
			return;
		var v = dbToLinear(vol);
		var is_music = (folder === 1);
		var src = this.runtime.files_subfolder + filename.toLowerCase() + (useOgg ? ".ogg" : ".m4a");
		lastAudio = this.getAudioInstance(src, tag, is_music, looping!==0, v);
		if (!lastAudio)
			return;
		lastAudio.setPannerEnabled(false);
		lastAudio.play(looping!==0, v);
	};
	Acts.prototype.PlayAtPositionByName = function (folder, filename, looping, vol, x_, y_, angle_, innerangle_, outerangle_, outergain_, tag)
	{
		if (silent)
			return;
		var v = dbToLinear(vol);
		var is_music = (folder === 1);
		var src = this.runtime.files_subfolder + filename.toLowerCase() + (useOgg ? ".ogg" : ".m4a");
		lastAudio = this.getAudioInstance(src, tag, is_music, looping!==0, v);
		if (!lastAudio)
		{
			var b = this.getAudioBuffer(src, is_music);
			b.panWhenReady.push({ x: x_, y: y_, a: angle_, ia: innerangle_, oa: outerangle_, og: dbToLinear(outergain_), thistag: tag });
			return;
		}
		lastAudio.setPannerEnabled(true);
		lastAudio.setPan(x_, y_, angle_, innerangle_, outerangle_, dbToLinear(outergain_));
		lastAudio.play(looping!==0, v);
	};
	Acts.prototype.PlayAtObjectByName = function (folder, filename, looping, vol, obj, innerangle, outerangle, outergain, tag)
	{
		if (silent || !obj)
			return;
		var inst = obj.getFirstPicked();
		if (!inst)
			return;
		var v = dbToLinear(vol);
		var is_music = (folder === 1);
		var src = this.runtime.files_subfolder + filename.toLowerCase() + (useOgg ? ".ogg" : ".m4a");
		lastAudio = this.getAudioInstance(src, tag, is_music, looping!==0, v);
		if (!lastAudio)
		{
			var b = this.getAudioBuffer(src, is_music);
			b.panWhenReady.push({ obj: inst, ia: innerangle, oa: outerangle, og: dbToLinear(outergain), thistag: tag });
			return;
		}
		lastAudio.setPannerEnabled(true);
		var px = cr.rotatePtAround(inst.x, inst.y, -inst.layer.getAngle(), listenerX, listenerY, true);
		var py = cr.rotatePtAround(inst.x, inst.y, -inst.layer.getAngle(), listenerX, listenerY, false);
		lastAudio.setPan(px, py, cr.to_degrees(inst.angle - inst.layer.getAngle()), innerangle, outerangle, dbToLinear(outergain));
		lastAudio.setObject(inst);
		lastAudio.play(looping!==0, v);
	};
	Acts.prototype.SetLooping = function (tag, looping)
	{
		getAudioByTag(tag);
		var i, len;
		for (i = 0, len = taggedAudio.length; i < len; i++)
			taggedAudio[i].setLooping(looping === 0);
	};
	Acts.prototype.SetMuted = function (tag, muted)
	{
		getAudioByTag(tag);
		var i, len;
		for (i = 0, len = taggedAudio.length; i < len; i++)
			taggedAudio[i].setMuted(muted === 0);
	};
	Acts.prototype.SetVolume = function (tag, vol)
	{
		getAudioByTag(tag);
		var v = dbToLinear(vol);
		var i, len;
		for (i = 0, len = taggedAudio.length; i < len; i++)
			taggedAudio[i].setVolume(v);
	};
	Acts.prototype.Preload = function (file)
	{
		if (silent)
			return;
		var is_music = file[1];
		var src = this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a");
		if (api === API_APPMOBI)
		{
			if (this.runtime.isDirectCanvas)
				AppMobi["context"]["loadSound"](src);
			else
				AppMobi["player"]["loadSound"](src);
			return;
		}
		else if (api === API_PHONEGAP)
		{
			return;
		}
		this.getAudioInstance(src, "<preload>", is_music, false);
	};
	Acts.prototype.PreloadByName = function (folder, filename)
	{
		if (silent)
			return;
		var is_music = (folder === 1);
		var src = this.runtime.files_subfolder + filename.toLowerCase() + (useOgg ? ".ogg" : ".m4a");
		if (api === API_APPMOBI)
		{
			if (this.runtime.isDirectCanvas)
				AppMobi["context"]["loadSound"](src);
			else
				AppMobi["player"]["loadSound"](src);
			return;
		}
		else if (api === API_PHONEGAP)
		{
			return;
		}
		this.getAudioInstance(src, "<preload>", is_music, false);
	};
	Acts.prototype.SetPlaybackRate = function (tag, rate)
	{
		getAudioByTag(tag);
		if (rate < 0.0)
			rate = 0;
		var i, len;
		for (i = 0, len = taggedAudio.length; i < len; i++)
			taggedAudio[i].setPlaybackRate(rate);
	};
	Acts.prototype.Stop = function (tag)
	{
		getAudioByTag(tag);
		var i, len;
		for (i = 0, len = taggedAudio.length; i < len; i++)
			taggedAudio[i].stop();
	};
	Acts.prototype.StopAll = function ()
	{
		var i, len;
		for (i = 0, len = audioInstances.length; i < len; i++)
			audioInstances[i].stop();
	};
	Acts.prototype.SetPaused = function (tag, state)
	{
		getAudioByTag(tag);
		var i, len;
		for (i = 0, len = taggedAudio.length; i < len; i++)
		{
			if (state === 0)
				taggedAudio[i].pause();
			else
				taggedAudio[i].resume();
		}
	};
	Acts.prototype.Seek = function (tag, pos)
	{
		getAudioByTag(tag);
		var i, len;
		for (i = 0, len = taggedAudio.length; i < len; i++)
		{
			taggedAudio[i].seek(pos);
		}
	};
	Acts.prototype.SetSilent = function (s)
	{
		var i, len;
		if (s === 2)					// toggling
			s = (silent ? 1 : 0);		// choose opposite state
		if (s === 0 && !silent)			// setting silent
		{
			for (i = 0, len = audioInstances.length; i < len; i++)
				audioInstances[i].setSilent(true);
			silent = true;
		}
		else if (s === 1 && silent)		// setting not silent
		{
			for (i = 0, len = audioInstances.length; i < len; i++)
				audioInstances[i].setSilent(false);
			silent = false;
		}
	};
	Acts.prototype.SetMasterVolume = function (vol)
	{
		masterVolume = dbToLinear(vol);
		var i, len;
		for (i = 0, len = audioInstances.length; i < len; i++)
			audioInstances[i].updateVolume();
	};
	Acts.prototype.AddFilterEffect = function (tag, type, freq, detune, q, gain, mix)
	{
		if (api !== API_WEBAUDIO || type < 0 || type >= filterTypes.length || !context["createBiquadFilter"])
			return;
		tag = tag.toLowerCase();
		mix = mix / 100;
		if (mix < 0) mix = 0;
		if (mix > 1) mix = 1;
		addEffectForTag(tag, new FilterEffect(type, freq, detune, q, gain, mix));
	};
	Acts.prototype.AddDelayEffect = function (tag, delay, gain, mix)
	{
		if (api !== API_WEBAUDIO)
			return;
		tag = tag.toLowerCase();
		mix = mix / 100;
		if (mix < 0) mix = 0;
		if (mix > 1) mix = 1;
		addEffectForTag(tag, new DelayEffect(delay, dbToLinear(gain), mix));
	};
	Acts.prototype.AddFlangerEffect = function (tag, delay, modulation, freq, feedback, mix)
	{
		if (api !== API_WEBAUDIO || !context["createOscillator"])
			return;
		tag = tag.toLowerCase();
		mix = mix / 100;
		if (mix < 0) mix = 0;
		if (mix > 1) mix = 1;
		addEffectForTag(tag, new FlangerEffect(delay / 1000, modulation / 1000, freq, feedback / 100, mix));
	};
	Acts.prototype.AddPhaserEffect = function (tag, freq, detune, q, mod, modfreq, mix)
	{
		if (api !== API_WEBAUDIO || !context["createOscillator"])
			return;
		tag = tag.toLowerCase();
		mix = mix / 100;
		if (mix < 0) mix = 0;
		if (mix > 1) mix = 1;
		addEffectForTag(tag, new PhaserEffect(freq, detune, q, mod, modfreq, mix));
	};
	Acts.prototype.AddConvolutionEffect = function (tag, file, norm, mix)
	{
		if (api !== API_WEBAUDIO || !context["createConvolver"])
			return;
		var doNormalize = (norm === 0);
		var src = this.runtime.files_subfolder + file[0] + (useOgg ? ".ogg" : ".m4a");
		var b = this.getAudioBuffer(src, false);
		tag = tag.toLowerCase();
		mix = mix / 100;
		if (mix < 0) mix = 0;
		if (mix > 1) mix = 1;
		var fx;
		if (b.bufferObject)
		{
			fx = new ConvolveEffect(b.bufferObject, doNormalize, mix, src);
		}
		else
		{
			fx = new ConvolveEffect(null, doNormalize, mix, src);
			b.normalizeWhenReady = doNormalize;
			b.convolveWhenReady = fx;
		}
		addEffectForTag(tag, fx);
	};
	Acts.prototype.AddGainEffect = function (tag, g)
	{
		if (api !== API_WEBAUDIO)
			return;
		tag = tag.toLowerCase();
		addEffectForTag(tag, new GainEffect(dbToLinear(g)));
	};
	Acts.prototype.AddMuteEffect = function (tag)
	{
		if (api !== API_WEBAUDIO)
			return;
		tag = tag.toLowerCase();
		addEffectForTag(tag, new GainEffect(0));	// re-use gain effect with 0 gain
	};
	Acts.prototype.AddTremoloEffect = function (tag, freq, mix)
	{
		if (api !== API_WEBAUDIO || !context["createOscillator"])
			return;
		tag = tag.toLowerCase();
		mix = mix / 100;
		if (mix < 0) mix = 0;
		if (mix > 1) mix = 1;
		addEffectForTag(tag, new TremoloEffect(freq, mix));
	};
	Acts.prototype.AddRingModEffect = function (tag, freq, mix)
	{
		if (api !== API_WEBAUDIO || !context["createOscillator"])
			return;
		tag = tag.toLowerCase();
		mix = mix / 100;
		if (mix < 0) mix = 0;
		if (mix > 1) mix = 1;
		addEffectForTag(tag, new RingModulatorEffect(freq, mix));
	};
	Acts.prototype.AddDistortionEffect = function (tag, threshold, headroom, drive, makeupgain, mix)
	{
		if (api !== API_WEBAUDIO || !context["createWaveShaper"])
			return;
		tag = tag.toLowerCase();
		mix = mix / 100;
		if (mix < 0) mix = 0;
		if (mix > 1) mix = 1;
		addEffectForTag(tag, new DistortionEffect(threshold, headroom, drive, makeupgain, mix));
	};
	Acts.prototype.AddCompressorEffect = function (tag, threshold, knee, ratio, attack, release)
	{
		if (api !== API_WEBAUDIO || !context["createDynamicsCompressor"])
			return;
		tag = tag.toLowerCase();
		addEffectForTag(tag, new CompressorEffect(threshold, knee, ratio, attack / 1000, release / 1000));
	};
	Acts.prototype.AddAnalyserEffect = function (tag, fftSize, smoothing)
	{
		if (api !== API_WEBAUDIO)
			return;
		tag = tag.toLowerCase();
		addEffectForTag(tag, new AnalyserEffect(fftSize, smoothing));
	};
	Acts.prototype.RemoveEffects = function (tag)
	{
		if (api !== API_WEBAUDIO)
			return;
		tag = tag.toLowerCase();
		var i, len, arr;
		if (effects.hasOwnProperty(tag))
		{
			arr = effects[tag];
			if (arr.length)
			{
				for (i = 0, len = arr.length; i < len; i++)
					arr[i].remove();
				arr.length = 0;
				reconnectEffects(tag);
			}
		}
	};
	Acts.prototype.SetEffectParameter = function (tag, index, param, value, ramp, time)
	{
		if (api !== API_WEBAUDIO)
			return;
		tag = tag.toLowerCase();
		index = Math.floor(index);
		var arr;
		if (!effects.hasOwnProperty(tag))
			return;
		arr = effects[tag];
		if (index < 0 || index >= arr.length)
			return;
		arr[index].setParam(param, value, ramp, time);
	};
	Acts.prototype.SetListenerObject = function (obj_)
	{
		if (!obj_ || api !== API_WEBAUDIO)
			return;
		var inst = obj_.getFirstPicked();
		if (!inst)
			return;
		this.listenerTracker.setObject(inst);
		listenerX = inst.x;
		listenerY = inst.y;
	};
	Acts.prototype.SetListenerZ = function (z)
	{
		this.listenerZ = z;
	};
	pluginProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.Duration = function (ret, tag)
	{
		getAudioByTag(tag);
		if (taggedAudio.length)
			ret.set_float(taggedAudio[0].getDuration());
		else
			ret.set_float(0);
	};
	Exps.prototype.PlaybackTime = function (ret, tag)
	{
		getAudioByTag(tag);
		if (taggedAudio.length)
			ret.set_float(taggedAudio[0].getPlaybackTime());
		else
			ret.set_float(0);
	};
	Exps.prototype.Volume = function (ret, tag)
	{
		getAudioByTag(tag);
		if (taggedAudio.length)
		{
			var v = taggedAudio[0].getVolume();
			ret.set_float(linearToDb(v));
		}
		else
			ret.set_float(0);
	};
	Exps.prototype.MasterVolume = function (ret)
	{
		ret.set_float(masterVolume);
	};
	Exps.prototype.EffectCount = function (ret, tag)
	{
		tag = tag.toLowerCase();
		var arr = null;
		if (effects.hasOwnProperty(tag))
			arr = effects[tag];
		ret.set_int(arr ? arr.length : 0);
	};
	function getAnalyser(tag, index)
	{
		var arr = null;
		if (effects.hasOwnProperty(tag))
			arr = effects[tag];
		if (arr && index >= 0 && index < arr.length && arr[index].freqBins)
			return arr[index];
		else
			return null;
	};
	Exps.prototype.AnalyserFreqBinCount = function (ret, tag, index)
	{
		tag = tag.toLowerCase();
		index = Math.floor(index);
		var analyser = getAnalyser(tag, index);
		ret.set_int(analyser ? analyser.node["frequencyBinCount"] : 0);
	};
	Exps.prototype.AnalyserFreqBinAt = function (ret, tag, index, bin)
	{
		tag = tag.toLowerCase();
		index = Math.floor(index);
		bin = Math.floor(bin);
		var analyser = getAnalyser(tag, index);
		if (!analyser)
			ret.set_float(0);
		else if (bin < 0 || bin >= analyser.node["frequencyBinCount"])
			ret.set_float(0);
		else
			ret.set_float(analyser.freqBins[bin]);
	};
	Exps.prototype.AnalyserPeakLevel = function (ret, tag, index)
	{
		tag = tag.toLowerCase();
		index = Math.floor(index);
		var analyser = getAnalyser(tag, index);
		if (analyser)
			ret.set_float(analyser.peak);
		else
			ret.set_float(0);
	};
	Exps.prototype.AnalyserRMSLevel = function (ret, tag, index)
	{
		tag = tag.toLowerCase();
		index = Math.floor(index);
		var analyser = getAnalyser(tag, index);
		if (analyser)
			ret.set_float(analyser.rms);
		else
			ret.set_float(0);
	};
	pluginProto.exps = new Exps();
}());
;
;
cr.plugins_.Browser = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var pluginProto = cr.plugins_.Browser.prototype;
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	typeProto.onCreate = function()
	{
	};
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
	};
	var instanceProto = pluginProto.Instance.prototype;
	instanceProto.onCreate = function()
	{
		var self = this;
		window.addEventListener("resize", function () {
			self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnResize, self);
		});
		if (typeof navigator.onLine !== "undefined")
		{
			window.addEventListener("online", function() {
				self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnOnline, self);
			});
			window.addEventListener("offline", function() {
				self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnOffline, self);
			});
		}
		if (typeof window.applicationCache !== "undefined")
		{
			window.applicationCache.addEventListener('updateready', function() {
				self.runtime.loadingprogress = 1;
				self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnUpdateReady, self);
			});
			window.applicationCache.addEventListener('progress', function(e) {
				self.runtime.loadingprogress = e["loaded"] / e["total"];
			});
		}
		if (!this.runtime.isDirectCanvas)
		{
			document.addEventListener("appMobi.device.update.available", function() {
				self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnUpdateReady, self);
			});
			document.addEventListener("backbutton", function() {
				self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnBackButton, self);
			});
			document.addEventListener("menubutton", function() {
				self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnMenuButton, self);
			});
			document.addEventListener("searchbutton", function() {
				self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnSearchButton, self);
			});
			document.addEventListener("tizenhwkey", function (e) {
				var ret;
				switch (e["keyName"]) {
				case "back":
					ret = self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnBackButton, self);
					if (!ret)
					{
						if (window["tizen"])
							window["tizen"]["application"]["getCurrentApplication"]()["exit"]();
					}
					break;
				case "menu":
					ret = self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnMenuButton, self);
					if (!ret)
						e.preventDefault();
					break;
				}
			});
		}
		this.runtime.addSuspendCallback(function(s) {
			if (s)
			{
				self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnPageHidden, self);
			}
			else
			{
				self.runtime.trigger(cr.plugins_.Browser.prototype.cnds.OnPageVisible, self);
			}
		});
		this.is_arcade = (typeof window["is_scirra_arcade"] !== "undefined");
	};
	function Cnds() {};
	Cnds.prototype.CookiesEnabled = function()
	{
		return navigator ? navigator.cookieEnabled : false;
	};
	Cnds.prototype.IsOnline = function()
	{
		return navigator ? navigator.onLine : false;
	};
	Cnds.prototype.HasJava = function()
	{
		return navigator ? navigator.javaEnabled() : false;
	};
	Cnds.prototype.OnOnline = function()
	{
		return true;
	};
	Cnds.prototype.OnOffline = function()
	{
		return true;
	};
	Cnds.prototype.IsDownloadingUpdate = function ()
	{
		if (typeof window["applicationCache"] === "undefined")
			return false;
		else
			return window["applicationCache"]["status"] === window["applicationCache"]["DOWNLOADING"];
	};
	Cnds.prototype.OnUpdateReady = function ()
	{
		return true;
	};
	Cnds.prototype.PageVisible = function ()
	{
		return !this.runtime.isSuspended;
	};
	Cnds.prototype.OnPageVisible = function ()
	{
		return true;
	};
	Cnds.prototype.OnPageHidden = function ()
	{
		return true;
	};
	Cnds.prototype.OnResize = function ()
	{
		return true;
	};
	Cnds.prototype.IsFullscreen = function ()
	{
		return !!(document["mozFullScreen"] || document["webkitIsFullScreen"] || document["fullScreen"] || this.runtime.isNodeFullscreen);
	};
	Cnds.prototype.OnBackButton = function ()
	{
		return true;
	};
	Cnds.prototype.OnMenuButton = function ()
	{
		return true;
	};
	Cnds.prototype.OnSearchButton = function ()
	{
		return true;
	};
	Cnds.prototype.IsMetered = function ()
	{
		var connection = navigator["connection"] || navigator["mozConnection"] || navigator["webkitConnection"];
		if (!connection)
			return false;
		return connection["metered"];
	};
	Cnds.prototype.IsCharging = function ()
	{
		var battery = navigator["battery"] || navigator["mozBattery"] || navigator["webkitBattery"];
		if (!battery)
			return true;
		return battery["charging"];
	};
	Cnds.prototype.IsPortraitLandscape = function (p)
	{
		var current = (window.innerWidth <= window.innerHeight ? 0 : 1);
		return current === p;
	};
	pluginProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.Alert = function (msg)
	{
		if (!this.runtime.isDomFree)
			alert(msg.toString());
	};
	Acts.prototype.Close = function ()
	{
		if (this.runtime.isCocoonJs)
			CocoonJS["App"]["forceToFinish"]();
		else if (window["tizen"])
			window["tizen"]["application"]["getCurrentApplication"]()["exit"]();
		else if (navigator["app"] && navigator["app"]["exitApp"])
			navigator["app"]["exitApp"]();
		else if (navigator["device"] && navigator["device"]["exitApp"])
			navigator["device"]["exitApp"]();
		else if (!this.is_arcade && !this.runtime.isDomFree)
			window.close();
	};
	Acts.prototype.Focus = function ()
	{
		if (this.runtime.isNodeWebkit)
		{
			var win = window["nwgui"]["Window"]["get"]();
			win["focus"]();
		}
		else if (!this.is_arcade && !this.runtime.isDomFree)
			window.focus();
	};
	Acts.prototype.Blur = function ()
	{
		if (this.runtime.isNodeWebkit)
		{
			var win = window["nwgui"]["Window"]["get"]();
			win["blur"]();
		}
		else if (!this.is_arcade && !this.runtime.isDomFree)
			window.blur();
	};
	Acts.prototype.GoBack = function ()
	{
		if (navigator["app"] && navigator["app"]["backHistory"])
			navigator["app"]["backHistory"]();
		else if (!this.is_arcade && !this.runtime.isDomFree && window.back)
			window.back();
	};
	Acts.prototype.GoForward = function ()
	{
		if (!this.is_arcade && !this.runtime.isDomFree && window.forward)
			window.forward();
	};
	Acts.prototype.GoHome = function ()
	{
		if (!this.is_arcade && !this.runtime.isDomFree && window.home)
			window.home();
	};
	Acts.prototype.GoToURL = function (url)
	{
		if (this.runtime.isCocoonJs)
			CocoonJS["App"]["openURL"](url);
		else if (!this.is_arcade && !this.runtime.isDomFree)
			window.location = url;
	};
	Acts.prototype.GoToURLWindow = function (url, tag)
	{
		if (this.runtime.isCocoonJs)
			CocoonJS["App"]["openURL"](url);
		else if (!this.is_arcade && !this.runtime.isDomFree)
			window.open(url, tag);
	};
	Acts.prototype.Reload = function ()
	{
		if (!this.is_arcade && !this.runtime.isDomFree)
			window.location.reload();
	};
	var firstRequestFullscreen = true;
	var crruntime = null;
	function onFullscreenError()
	{
		if (typeof jQuery !== "undefined")
		{
			crruntime["setSize"](jQuery(window).width(), jQuery(window).height());
		}
	};
	Acts.prototype.RequestFullScreen = function (stretchmode)
	{
		if (this.runtime.isDomFree)
		{
			cr.logexport("[Construct 2] Requesting fullscreen is not supported on this platform - the request has been ignored");
			return;
		}
		if (stretchmode >= 2)
			stretchmode += 1;
		if (stretchmode === 6)
			stretchmode = 2;
		if (this.runtime.isNodeWebkit)
		{
			if (!this.runtime.isNodeFullscreen)
			{
				window["nwgui"]["Window"]["get"]()["enterFullscreen"]();
				this.runtime.isNodeFullscreen = true;
			}
		}
		else
		{
			if (document["mozFullScreen"] || document["webkitIsFullScreen"] || !!document["msFullscreenElement"] || document["fullScreen"])
			{
				return;
			}
			this.runtime.fullscreen_scaling = (stretchmode >= 2 ? stretchmode : 0);
			var elem = this.runtime.canvasdiv || this.runtime.canvas;
			if (firstRequestFullscreen)
			{
				firstRequestFullscreen = false;
				crruntime = this.runtime;
				elem.addEventListener("mozfullscreenerror", onFullscreenError);
				elem.addEventListener("webkitfullscreenerror", onFullscreenError);
				elem.addEventListener("msfullscreenerror", onFullscreenError);
				elem.addEventListener("fullscreenerror", onFullscreenError);
			}
			if (!cr.is_undefined(elem["requestFullscreen"]))
				elem["requestFullscreen"]();
			else if (!cr.is_undefined(elem["webkitRequestFullScreen"]))
			{
				if (typeof Element !== "undefined" && typeof Element["ALLOW_KEYBOARD_INPUT"] !== "undefined")
					elem["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"]);
				else
					elem["webkitRequestFullScreen"]();
			}
			else if (!cr.is_undefined(elem["mozRequestFullScreen"]))
				elem["mozRequestFullScreen"]();
			else if (!cr.is_undefined(elem["msRequestFullscreen"]))
				elem["msRequestFullscreen"]();
		}
	};
	Acts.prototype.CancelFullScreen = function ()
	{
		if (this.runtime.isDomFree)
		{
			cr.logexport("[Construct 2] Exiting fullscreen is not supported on this platform - the request has been ignored");
			return;
		}
		if (this.runtime.isNodeWebkit)
		{
			if (this.runtime.isNodeFullscreen)
			{
				window["nwgui"]["Window"]["get"]()["leaveFullscreen"]();
				this.runtime.isNodeFullscreen = false;
			}
		}
		else
		{
			if (!cr.is_undefined(document["exitFullscreen"]))
				document["exitFullscreen"]();
			else if (!cr.is_undefined(document["webkitCancelFullScreen"]))
				document["webkitCancelFullScreen"]();
			else if (!cr.is_undefined(document["mozCancelFullScreen"]))
				document["mozCancelFullScreen"]();
			else if (!cr.is_undefined(document["msExitFullscreen"]))
				document["msExitFullscreen"]();
		}
	};
	Acts.prototype.Vibrate = function (pattern_)
	{
		try {
			var arr = pattern_.split(",");
			var i, len;
			for (i = 0, len = arr.length; i < len; i++)
			{
				arr[i] = parseInt(arr[i], 10);
			}
			if (navigator["vibrate"])
				navigator["vibrate"](arr);
			else if (navigator["mozVibrate"])
				navigator["mozVibrate"](arr);
			else if (navigator["webkitVibrate"])
				navigator["webkitVibrate"](arr);
			else if (navigator["msVibrate"])
				navigator["msVibrate"](arr);
		}
		catch (e) {}
	};
	Acts.prototype.InvokeDownload = function (url_, filename_)
	{
		var a = document.createElement("a");
		if (typeof a.download === "undefined")
		{
			window.open(url_);
		}
		else
		{
			var body = document.getElementsByTagName("body")[0];
			a.textContent = filename_;
			a.href = url_;
			a.download = filename_;
			body.appendChild(a);
			var clickEvent = document.createEvent("MouseEvent");
			clickEvent.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
			a.dispatchEvent(clickEvent);
			body.removeChild(a);
		}
	};
	Acts.prototype.InvokeDownloadString = function (str_, mimetype_, filename_)
	{
		var datauri = "data:" + mimetype_ + "," + encodeURIComponent(str_);
		var a = document.createElement("a");
		if (typeof a.download === "undefined")
		{
			window.open(datauri);
		}
		else
		{
			var body = document.getElementsByTagName("body")[0];
			a.textContent = filename_;
			a.href = datauri;
			a.download = filename_;
			body.appendChild(a);
			var clickEvent = document.createEvent("MouseEvent");
			clickEvent.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
			a.dispatchEvent(clickEvent);
			body.removeChild(a);
		}
	};
	Acts.prototype.ConsoleLog = function (type_, msg_)
	{
		if (typeof console === "undefined")
			return;
		if (type_ === 0 && console.log)
			console.log(msg_.toString());
		if (type_ === 1 && console.warn)
			console.warn(msg_.toString());
		if (type_ === 2 && console.error)
			console.error(msg_.toString());
	};
	Acts.prototype.ConsoleGroup = function (name_)
	{
		if (console && console.group)
			console.group(name_);
	};
	Acts.prototype.ConsoleGroupEnd = function ()
	{
		if (console && console.groupEnd)
			console.groupEnd();
	};
	Acts.prototype.ExecJs = function (js_)
	{
		if (eval)
			eval(js_);
	};
	var orientations = [
		"portrait",
		"landscape",
		"portrait-primary",
		"portrait-secondary",
		"landscape-primary",
		"landscape-secondary"
	];
	Acts.prototype.LockOrientation = function (o)
	{
		o = Math.floor(o);
		if (o < 0 || o >= orientations.length)
			return;
		this.runtime.autoLockOrientation = false;
		var orientation = orientations[o];
		if (screen["lockOrientation"])
			screen["lockOrientation"](orientation);
		else if (screen["webkitLockOrientation"])
			screen["webkitLockOrientation"](orientation);
		else if (screen["mozLockOrientation"])
			screen["mozLockOrientation"](orientation);
		else if (screen["msLockOrientation"])
			screen["msLockOrientation"](orientation);
	};
	Acts.prototype.UnlockOrientation = function ()
	{
		this.runtime.autoLockOrientation = false;
		if (screen["unlockOrientation"])
			screen["unlockOrientation"]();
		else if (screen["webkitUnlockOrientation"])
			screen["webkitUnlockOrientation"]();
		else if (screen["mozUnlockOrientation"])
			screen["mozUnlockOrientation"]();
		else if (screen["msUnlockOrientation"])
			screen["msUnlockOrientation"]();
	};
	pluginProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.URL = function (ret)
	{
		ret.set_string(this.runtime.isDomFree ? "" : window.location.toString());
	};
	Exps.prototype.Protocol = function (ret)
	{
		ret.set_string(this.runtime.isDomFree ? "" : window.location.protocol);
	};
	Exps.prototype.Domain = function (ret)
	{
		ret.set_string(this.runtime.isDomFree ? "" : window.location.hostname);
	};
	Exps.prototype.PathName = function (ret)
	{
		ret.set_string(this.runtime.isDomFree ? "" : window.location.pathname);
	};
	Exps.prototype.Hash = function (ret)
	{
		ret.set_string(this.runtime.isDomFree ? "" : window.location.hash);
	};
	Exps.prototype.Referrer = function (ret)
	{
		ret.set_string(this.runtime.isDomFree ? "" : document.referrer);
	};
	Exps.prototype.Title = function (ret)
	{
		ret.set_string(this.runtime.isDomFree ? "" : document.title);
	};
	Exps.prototype.Name = function (ret)
	{
		ret.set_string(this.runtime.isDomFree ? "" : navigator.appName);
	};
	Exps.prototype.Version = function (ret)
	{
		ret.set_string(this.runtime.isDomFree ? "" : navigator.appVersion);
	};
	Exps.prototype.Language = function (ret)
	{
		if (navigator && navigator.language)
			ret.set_string(navigator.language);
		else
			ret.set_string("");
	};
	Exps.prototype.Platform = function (ret)
	{
		ret.set_string(this.runtime.isDomFree ? "" : navigator.platform);
	};
	Exps.prototype.Product = function (ret)
	{
		if (navigator && navigator.product)
			ret.set_string(navigator.product);
		else
			ret.set_string("");
	};
	Exps.prototype.Vendor = function (ret)
	{
		if (navigator && navigator.vendor)
			ret.set_string(navigator.vendor);
		else
			ret.set_string("");
	};
	Exps.prototype.UserAgent = function (ret)
	{
		ret.set_string(this.runtime.isDomFree ? "" : navigator.userAgent);
	};
	Exps.prototype.QueryString = function (ret)
	{
		ret.set_string(this.runtime.isDomFree ? "" : window.location.search);
	};
	Exps.prototype.QueryParam = function (ret, paramname)
	{
		if (this.runtime.isDomFree)
		{
			ret.set_string("");
			return;
		}
		var match = RegExp('[?&]' + paramname + '=([^&]*)').exec(window.location.search);
		if (match)
			ret.set_string(decodeURIComponent(match[1].replace(/\+/g, ' ')));
		else
			ret.set_string("");
	};
	Exps.prototype.Bandwidth = function (ret)
	{
		var connection = navigator["connection"] || navigator["mozConnection"] || navigator["webkitConnection"];
		if (!connection)
			ret.set_float(Number.POSITIVE_INFINITY);
		else
			ret.set_float(connection["bandwidth"]);
	};
	Exps.prototype.BatteryLevel = function (ret)
	{
		var battery = navigator["battery"] || navigator["mozBattery"] || navigator["webkitBattery"];
		if (!battery)
			ret.set_float(1);
		else
			ret.set_float(battery["level"]);
	};
	Exps.prototype.BatteryTimeLeft = function (ret)
	{
		var battery = navigator["battery"] || navigator["mozBattery"] || navigator["webkitBattery"];
		if (!battery)
			ret.set_float(Number.POSITIVE_INFINITY);
		else
			ret.set_float(battery["dischargingTime"]);
	};
	Exps.prototype.ExecJS = function (ret, js_)
	{
		if (!eval)
		{
			ret.set_any(0);
			return;
		}
		var result = eval(js_);
		if (typeof result === "number")
			ret.set_any(result);
		else if (typeof result === "string")
			ret.set_any(result);
		else if (typeof result === "boolean")
			ret.set_any(result ? 1 : 0);
		else
			ret.set_any(0);
	};
	Exps.prototype.ScreenWidth = function (ret)
	{
		ret.set_int(screen.width);
	};
	Exps.prototype.ScreenHeight = function (ret)
	{
		ret.set_int(screen.height);
	};
	Exps.prototype.DevicePixelRatio = function (ret)
	{
		ret.set_float(this.runtime.devicePixelRatio);
	};
	pluginProto.exps = new Exps();
}());
;
;
cr.plugins_.Function = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var pluginProto = cr.plugins_.Function.prototype;
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	typeProto.onCreate = function()
	{
	};
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
	};
	var instanceProto = pluginProto.Instance.prototype;
	var funcStack = [];
	var funcStackPtr = -1;
	var isInPreview = false;	// set in onCreate
	function FuncStackEntry()
	{
		this.name = "";
		this.retVal = 0;
		this.params = [];
	};
	function pushFuncStack()
	{
		funcStackPtr++;
		if (funcStackPtr === funcStack.length)
			funcStack.push(new FuncStackEntry());
		return funcStack[funcStackPtr];
	};
	function getCurrentFuncStack()
	{
		if (funcStackPtr < 0)
			return null;
		return funcStack[funcStackPtr];
	};
	function getOneAboveFuncStack()
	{
		if (!funcStack.length)
			return null;
		var i = funcStackPtr + 1;
		if (i >= funcStack.length)
			i = funcStack.length - 1;
		return funcStack[i];
	};
	function popFuncStack()
	{
;
		funcStackPtr--;
	};
	instanceProto.onCreate = function()
	{
		isInPreview = (typeof cr_is_preview !== "undefined");
	};
	function Cnds() {};
	Cnds.prototype.OnFunction = function (name_)
	{
		var fs = getCurrentFuncStack();
		if (!fs)
			return false;
		return cr.equals_nocase(name_, fs.name);
	};
	Cnds.prototype.CompareParam = function (index_, cmp_, value_)
	{
		var fs = getCurrentFuncStack();
		if (!fs)
			return false;
		index_ = cr.floor(index_);
		if (index_ < 0 || index_ >= fs.params.length)
			return false;
		return cr.do_cmp(fs.params[index_], cmp_, value_);
	};
	pluginProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.CallFunction = function (name_, params_)
	{
		var fs = pushFuncStack();
		fs.name = name_.toLowerCase();
		fs.retVal = 0;
		cr.shallowAssignArray(fs.params, params_);
		var ran = this.runtime.trigger(cr.plugins_.Function.prototype.cnds.OnFunction, this, fs.name);
		if (isInPreview && !ran)
		{
;
		}
		popFuncStack();
	};
	Acts.prototype.SetReturnValue = function (value_)
	{
		var fs = getCurrentFuncStack();
		if (fs)
			fs.retVal = value_;
		else
;
	};
	pluginProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.ReturnValue = function (ret)
	{
		var fs = getOneAboveFuncStack();
		if (fs)
			ret.set_any(fs.retVal);
		else
			ret.set_int(0);
	};
	Exps.prototype.ParamCount = function (ret)
	{
		var fs = getCurrentFuncStack();
		if (fs)
			ret.set_int(fs.params.length);
		else
		{
;
			ret.set_int(0);
		}
	};
	Exps.prototype.Param = function (ret, index_)
	{
		index_ = cr.floor(index_);
		var fs = getCurrentFuncStack();
		if (fs)
		{
			if (index_ >= 0 && index_ < fs.params.length)
			{
				ret.set_any(fs.params[index_]);
			}
			else
			{
;
				ret.set_int(0);
			}
		}
		else
		{
;
			ret.set_int(0);
		}
	};
	Exps.prototype.Call = function (ret, name_)
	{
		var fs = pushFuncStack();
		fs.name = name_.toLowerCase();
		fs.retVal = 0;
		fs.params.length = 0;
		var i, len;
		for (i = 2, len = arguments.length; i < len; i++)
			fs.params.push(arguments[i]);
		var ran = this.runtime.trigger(cr.plugins_.Function.prototype.cnds.OnFunction, this, fs.name);
		if (isInPreview && !ran)
		{
;
		}
		popFuncStack();
		ret.set_any(fs.retVal);
	};
	pluginProto.exps = new Exps();
}());
;
;
cr.plugins_.Keyboard = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var pluginProto = cr.plugins_.Keyboard.prototype;
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	typeProto.onCreate = function()
	{
	};
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
		this.keyMap = new Array(256);	// stores key up/down state
		this.usedKeys = new Array(256);
		this.triggerKey = 0;
	};
	var instanceProto = pluginProto.Instance.prototype;
	instanceProto.onCreate = function()
	{
		var self = this;
		if (!this.runtime.isDomFree)
		{
			jQuery(document).keydown(
				function(info) {
					self.onKeyDown(info);
				}
			);
			jQuery(document).keyup(
				function(info) {
					self.onKeyUp(info);
				}
			);
		}
	};
	var keysToBlockWhenFramed = [32, 33, 34, 35, 36, 37, 38, 39, 40, 44];
	instanceProto.onKeyDown = function (info)
	{
		var alreadyPreventedDefault = false;
		if (window != window.top && keysToBlockWhenFramed.indexOf(info.which) > -1)
		{
			info.preventDefault();
			alreadyPreventedDefault = true;
			info.stopPropagation();
		}
		if (this.keyMap[info.which])
		{
			if (this.usedKeys[info.which] && !alreadyPreventedDefault)
				info.preventDefault();
			return;
		}
		this.keyMap[info.which] = true;
		this.triggerKey = info.which;
		this.runtime.isInUserInputEvent = true;
		this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnAnyKey, this);
		var eventRan = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKey, this);
		var eventRan2 = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKeyCode, this);
		this.runtime.isInUserInputEvent = false;
		if (eventRan || eventRan2)
		{
			this.usedKeys[info.which] = true;
			if (!alreadyPreventedDefault)
				info.preventDefault();
		}
	};
	instanceProto.onKeyUp = function (info)
	{
		this.keyMap[info.which] = false;
		this.triggerKey = info.which;
		this.runtime.isInUserInputEvent = true;
		this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnAnyKeyReleased, this);
		var eventRan = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKeyReleased, this);
		var eventRan2 = this.runtime.trigger(cr.plugins_.Keyboard.prototype.cnds.OnKeyCodeReleased, this);
		this.runtime.isInUserInputEvent = false;
		if (eventRan || eventRan2 || this.usedKeys[info.which])
		{
			this.usedKeys[info.which] = true;
			info.preventDefault();
		}
	};
	instanceProto.saveToJSON = function ()
	{
		return { "triggerKey": this.triggerKey };
	};
	instanceProto.loadFromJSON = function (o)
	{
		this.triggerKey = o["triggerKey"];
	};
	function Cnds() {};
	Cnds.prototype.IsKeyDown = function(key)
	{
		return this.keyMap[key];
	};
	Cnds.prototype.OnKey = function(key)
	{
		return (key === this.triggerKey);
	};
	Cnds.prototype.OnAnyKey = function(key)
	{
		return true;
	};
	Cnds.prototype.OnAnyKeyReleased = function(key)
	{
		return true;
	};
	Cnds.prototype.OnKeyReleased = function(key)
	{
		return (key === this.triggerKey);
	};
	Cnds.prototype.IsKeyCodeDown = function(key)
	{
		key = Math.floor(key);
		if (key < 0 || key >= this.keyMap.length)
			return false;
		return this.keyMap[key];
	};
	Cnds.prototype.OnKeyCode = function(key)
	{
		return (key === this.triggerKey);
	};
	Cnds.prototype.OnKeyCodeReleased = function(key)
	{
		return (key === this.triggerKey);
	};
	pluginProto.cnds = new Cnds();
	function Acts() {};
	pluginProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.LastKeyCode = function (ret)
	{
		ret.set_int(this.triggerKey);
	};
	function fixedStringFromCharCode(kc)
	{
		kc = Math.floor(kc);
		switch (kc) {
		case 8:		return "backspace";
		case 9:		return "tab";
		case 13:	return "enter";
		case 16:	return "shift";
		case 17:	return "control";
		case 18:	return "alt";
		case 19:	return "pause";
		case 20:	return "capslock";
		case 27:	return "esc";
		case 33:	return "pageup";
		case 34:	return "pagedown";
		case 35:	return "end";
		case 36:	return "home";
		case 37:	return "←";
		case 38:	return "↑";
		case 39:	return "→";
		case 40:	return "↓";
		case 45:	return "insert";
		case 46:	return "del";
		case 91:	return "left window key";
		case 92:	return "right window key";
		case 93:	return "select";
		case 96:	return "numpad 0";
		case 97:	return "numpad 1";
		case 98:	return "numpad 2";
		case 99:	return "numpad 3";
		case 100:	return "numpad 4";
		case 101:	return "numpad 5";
		case 102:	return "numpad 6";
		case 103:	return "numpad 7";
		case 104:	return "numpad 8";
		case 105:	return "numpad 9";
		case 106:	return "numpad *";
		case 107:	return "numpad +";
		case 109:	return "numpad -";
		case 110:	return "numpad .";
		case 111:	return "numpad /";
		case 112:	return "F1";
		case 113:	return "F2";
		case 114:	return "F3";
		case 115:	return "F4";
		case 116:	return "F5";
		case 117:	return "F6";
		case 118:	return "F7";
		case 119:	return "F8";
		case 120:	return "F9";
		case 121:	return "F10";
		case 122:	return "F11";
		case 123:	return "F12";
		case 144:	return "numlock";
		case 145:	return "scroll lock";
		case 186:	return ";";
		case 187:	return "=";
		case 188:	return ",";
		case 189:	return "-";
		case 190:	return ".";
		case 191:	return "/";
		case 192:	return "'";
		case 219:	return "[";
		case 220:	return "\\";
		case 221:	return "]";
		case 222:	return "#";
		case 223:	return "`";
		default:	return String.fromCharCode(kc);
		}
	};
	Exps.prototype.StringFromKeyCode = function (ret, kc)
	{
		ret.set_string(fixedStringFromCharCode(kc));
	};
	pluginProto.exps = new Exps();
}());
;
;
cr.plugins_.Mouse = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var pluginProto = cr.plugins_.Mouse.prototype;
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	typeProto.onCreate = function()
	{
	};
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
		this.buttonMap = new Array(4);		// mouse down states
		this.mouseXcanvas = 0;				// mouse position relative to canvas
		this.mouseYcanvas = 0;
		this.triggerButton = 0;
		this.triggerType = 0;
		this.triggerDir = 0;
		this.handled = false;
	};
	var instanceProto = pluginProto.Instance.prototype;
	instanceProto.onCreate = function()
	{
		var self = this;
		if (!this.runtime.isDomFree)
		{
			jQuery(document).mousemove(
				function(info) {
					self.onMouseMove(info);
				}
			);
			jQuery(document).mousedown(
				function(info) {
					self.onMouseDown(info);
				}
			);
			jQuery(document).mouseup(
				function(info) {
					self.onMouseUp(info);
				}
			);
			jQuery(document).dblclick(
				function(info) {
					self.onDoubleClick(info);
				}
			);
			var wheelevent = function(info) {
								self.onWheel(info);
							};
			document.addEventListener("mousewheel", wheelevent, false);
			document.addEventListener("DOMMouseScroll", wheelevent, false);
		}
	};
	var dummyoffset = {left: 0, top: 0};
	instanceProto.onMouseMove = function(info)
	{
		var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset();
		this.mouseXcanvas = info.pageX - offset.left;
		this.mouseYcanvas = info.pageY - offset.top;
	};
	instanceProto.mouseInGame = function ()
	{
		if (this.runtime.fullscreen_mode > 0)
			return true;
		return this.mouseXcanvas >= 0 && this.mouseYcanvas >= 0
		    && this.mouseXcanvas < this.runtime.width && this.mouseYcanvas < this.runtime.height;
	};
	instanceProto.onMouseDown = function(info)
	{
		if (!this.mouseInGame())
			return;
		if (this.runtime.had_a_click)
			info.preventDefault();
		this.buttonMap[info.which] = true;
		this.runtime.isInUserInputEvent = true;
		this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnAnyClick, this);
		this.triggerButton = info.which - 1;	// 1-based
		this.triggerType = 0;					// single click
		this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnClick, this);
		this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnObjectClicked, this);
		this.runtime.isInUserInputEvent = false;
	};
	instanceProto.onMouseUp = function(info)
	{
		if (!this.buttonMap[info.which])
			return;
		if (this.runtime.had_a_click)
			info.preventDefault();
		this.runtime.had_a_click = true;
		this.buttonMap[info.which] = false;
		this.runtime.isInUserInputEvent = true;
		this.triggerButton = info.which - 1;	// 1-based
		this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnRelease, this);
		this.runtime.isInUserInputEvent = false;
	};
	instanceProto.onDoubleClick = function(info)
	{
		if (!this.mouseInGame())
			return;
		info.preventDefault();
		this.runtime.isInUserInputEvent = true;
		this.triggerButton = info.which - 1;	// 1-based
		this.triggerType = 1;					// double click
		this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnClick, this);
		this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnObjectClicked, this);
		this.runtime.isInUserInputEvent = false;
	};
	instanceProto.onWheel = function (info)
	{
		var delta = info.wheelDelta ? info.wheelDelta : info.detail ? -info.detail : 0;
		this.triggerDir = (delta < 0 ? 0 : 1);
		this.handled = false;
		this.runtime.isInUserInputEvent = true;
		this.runtime.trigger(cr.plugins_.Mouse.prototype.cnds.OnWheel, this);
		this.runtime.isInUserInputEvent = false;
		if (this.handled)
			info.preventDefault();
	};
	function Cnds() {};
	Cnds.prototype.OnClick = function (button, type)
	{
		return button === this.triggerButton && type === this.triggerType;
	};
	Cnds.prototype.OnAnyClick = function ()
	{
		return true;
	};
	Cnds.prototype.IsButtonDown = function (button)
	{
		return this.buttonMap[button + 1];	// jQuery uses 1-based buttons for some reason
	};
	Cnds.prototype.OnRelease = function (button)
	{
		return button === this.triggerButton;
	};
	Cnds.prototype.IsOverObject = function (obj)
	{
		var cnd = this.runtime.getCurrentCondition();
		var mx = this.mouseXcanvas;
		var my = this.mouseYcanvas;
		return cr.xor(this.runtime.testAndSelectCanvasPointOverlap(obj, mx, my, cnd.inverted), cnd.inverted);
	};
	Cnds.prototype.OnObjectClicked = function (button, type, obj)
	{
		if (button !== this.triggerButton || type !== this.triggerType)
			return false;	// wrong click type
		return this.runtime.testAndSelectCanvasPointOverlap(obj, this.mouseXcanvas, this.mouseYcanvas, false);
	};
	Cnds.prototype.OnWheel = function (dir)
	{
		this.handled = true;
		return dir === this.triggerDir;
	};
	pluginProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.SetCursor = function (c)
	{
		var cursor_style = ["auto", "pointer", "text", "crosshair", "move", "help", "wait", "none"][c];
		if (this.runtime.canvas && this.runtime.canvas.style)
			this.runtime.canvas.style.cursor = cursor_style;
	};
	Acts.prototype.SetCursorSprite = function (obj)
	{
		if (this.runtime.isDomFree || this.runtime.isMobile || !obj)
			return;
		var inst = obj.getFirstPicked();
		if (!inst || !inst.curFrame)
			return;
		var frame = inst.curFrame;
		var datauri = frame.getDataUri();
		var cursor_style = "url(" + datauri + ") " + Math.round(frame.hotspotX * frame.width) + " " + Math.round(frame.hotspotY * frame.height) + ", auto";
		jQuery(this.runtime.canvas).css("cursor", cursor_style);
	};
	pluginProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.X = function (ret, layerparam)
	{
		var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle;
		if (cr.is_undefined(layerparam))
		{
			layer = this.runtime.getLayerByNumber(0);
			oldScale = layer.scale;
			oldZoomRate = layer.zoomRate;
			oldParallaxX = layer.parallaxX;
			oldAngle = layer.angle;
			layer.scale = this.runtime.running_layout.scale;
			layer.zoomRate = 1.0;
			layer.parallaxX = 1.0;
			layer.angle = this.runtime.running_layout.angle;
			ret.set_float(layer.canvasToLayer(this.mouseXcanvas, this.mouseYcanvas, true));
			layer.scale = oldScale;
			layer.zoomRate = oldZoomRate;
			layer.parallaxX = oldParallaxX;
			layer.angle = oldAngle;
		}
		else
		{
			if (cr.is_number(layerparam))
				layer = this.runtime.getLayerByNumber(layerparam);
			else
				layer = this.runtime.getLayerByName(layerparam);
			if (layer)
				ret.set_float(layer.canvasToLayer(this.mouseXcanvas, this.mouseYcanvas, true));
			else
				ret.set_float(0);
		}
	};
	Exps.prototype.Y = function (ret, layerparam)
	{
		var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle;
		if (cr.is_undefined(layerparam))
		{
			layer = this.runtime.getLayerByNumber(0);
			oldScale = layer.scale;
			oldZoomRate = layer.zoomRate;
			oldParallaxY = layer.parallaxY;
			oldAngle = layer.angle;
			layer.scale = this.runtime.running_layout.scale;
			layer.zoomRate = 1.0;
			layer.parallaxY = 1.0;
			layer.angle = this.runtime.running_layout.angle;
			ret.set_float(layer.canvasToLayer(this.mouseXcanvas, this.mouseYcanvas, false));
			layer.scale = oldScale;
			layer.zoomRate = oldZoomRate;
			layer.parallaxY = oldParallaxY;
			layer.angle = oldAngle;
		}
		else
		{
			if (cr.is_number(layerparam))
				layer = this.runtime.getLayerByNumber(layerparam);
			else
				layer = this.runtime.getLayerByName(layerparam);
			if (layer)
				ret.set_float(layer.canvasToLayer(this.mouseXcanvas, this.mouseYcanvas, false));
			else
				ret.set_float(0);
		}
	};
	Exps.prototype.AbsoluteX = function (ret)
	{
		ret.set_float(this.mouseXcanvas);
	};
	Exps.prototype.AbsoluteY = function (ret)
	{
		ret.set_float(this.mouseYcanvas);
	};
	pluginProto.exps = new Exps();
}());
;
;
cr.plugins_.Sprite = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var pluginProto = cr.plugins_.Sprite.prototype;
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	function frame_getDataUri()
	{
		if (this.datauri.length === 0)
		{
			var tmpcanvas = document.createElement("canvas");
			tmpcanvas.width = this.width;
			tmpcanvas.height = this.height;
			var tmpctx = tmpcanvas.getContext("2d");
			if (this.spritesheeted)
			{
				tmpctx.drawImage(this.texture_img, this.offx, this.offy, this.width, this.height,
										 0, 0, this.width, this.height);
			}
			else
			{
				tmpctx.drawImage(this.texture_img, 0, 0, this.width, this.height);
			}
			this.datauri = tmpcanvas.toDataURL("image/png");
		}
		return this.datauri;
	};
	typeProto.onCreate = function()
	{
		if (this.is_family)
			return;
		var i, leni, j, lenj;
		var anim, frame, animobj, frameobj, wt, uv;
		this.all_frames = [];
		this.has_loaded_textures = false;
		for (i = 0, leni = this.animations.length; i < leni; i++)
		{
			anim = this.animations[i];
			animobj = {};
			animobj.name = anim[0];
			animobj.speed = anim[1];
			animobj.loop = anim[2];
			animobj.repeatcount = anim[3];
			animobj.repeatto = anim[4];
			animobj.pingpong = anim[5];
			animobj.sid = anim[6];
			animobj.frames = [];
			for (j = 0, lenj = anim[7].length; j < lenj; j++)
			{
				frame = anim[7][j];
				frameobj = {};
				frameobj.texture_file = frame[0];
				frameobj.texture_filesize = frame[1];
				frameobj.offx = frame[2];
				frameobj.offy = frame[3];
				frameobj.width = frame[4];
				frameobj.height = frame[5];
				frameobj.duration = frame[6];
				frameobj.hotspotX = frame[7];
				frameobj.hotspotY = frame[8];
				frameobj.image_points = frame[9];
				frameobj.poly_pts = frame[10];
				frameobj.pixelformat = frame[11];
				frameobj.spritesheeted = (frameobj.width !== 0);
				frameobj.datauri = "";		// generated on demand and cached
				frameobj.getDataUri = frame_getDataUri;
				uv = {};
				uv.left = 0;
				uv.top = 0;
				uv.right = 1;
				uv.bottom = 1;
				frameobj.sheetTex = uv;
				frameobj.webGL_texture = null;
				wt = this.runtime.findWaitingTexture(frame[0]);
				if (wt)
				{
					frameobj.texture_img = wt;
				}
				else
				{
					frameobj.texture_img = new Image();
					frameobj.texture_img["idtkLoadDisposed"] = true;
					frameobj.texture_img.src = frame[0];
					frameobj.texture_img.cr_src = frame[0];
					frameobj.texture_img.cr_filesize = frame[1];
					frameobj.texture_img.c2webGL_texture = null;
					this.runtime.waitForImageLoad(frameobj.texture_img);
				}
				cr.seal(frameobj);
				animobj.frames.push(frameobj);
				this.all_frames.push(frameobj);
			}
			cr.seal(animobj);
			this.animations[i] = animobj;		// swap array data for object
		}
	};
	typeProto.updateAllCurrentTexture = function ()
	{
		var i, len, inst;
		for (i = 0, len = this.instances.length; i < len; i++)
		{
			inst = this.instances[i];
			inst.curWebGLTexture = inst.curFrame.webGL_texture;
		}
	};
	typeProto.onLostWebGLContext = function ()
	{
		if (this.is_family)
			return;
		var i, len, frame;
		for (i = 0, len = this.all_frames.length; i < len; ++i)
		{
			frame = this.all_frames[i];
			frame.texture_img.c2webGL_texture = null;
			frame.webGL_texture = null;
		}
	};
	typeProto.onRestoreWebGLContext = function ()
	{
		if (this.is_family || !this.instances.length)
			return;
		var i, len, frame;
		for (i = 0, len = this.all_frames.length; i < len; ++i)
		{
			frame = this.all_frames[i];
			frame.webGL_texture = this.runtime.glwrap.loadTexture(frame.texture_img, false, this.runtime.linearSampling, frame.pixelformat);
		}
		this.updateAllCurrentTexture();
	};
	typeProto.loadTextures = function ()
	{
		if (this.is_family || this.has_loaded_textures || !this.runtime.glwrap)
			return;
		var i, len, frame;
		for (i = 0, len = this.all_frames.length; i < len; ++i)
		{
			frame = this.all_frames[i];
			frame.webGL_texture = this.runtime.glwrap.loadTexture(frame.texture_img, false, this.runtime.linearSampling, frame.pixelformat);
		}
		this.has_loaded_textures = true;
	};
	typeProto.unloadTextures = function ()
	{
		if (this.is_family || this.instances.length || !this.has_loaded_textures)
			return;
		var i, len, frame;
		for (i = 0, len = this.all_frames.length; i < len; ++i)
		{
			frame = this.all_frames[i];
			this.runtime.glwrap.deleteTexture(frame.webGL_texture);
		}
		this.has_loaded_textures = false;
	};
	var already_drawn_images = [];
	typeProto.preloadCanvas2D = function (ctx)
	{
		var i, len, frameimg;
		already_drawn_images.length = 0;
		for (i = 0, len = this.all_frames.length; i < len; ++i)
		{
			frameimg = this.all_frames[i].texture_img;
			if (already_drawn_images.indexOf(frameimg) !== -1)
					continue;
			ctx.drawImage(frameimg, 0, 0);
			already_drawn_images.push(frameimg);
		}
	};
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
		var poly_pts = this.type.animations[0].frames[0].poly_pts;
		if (this.recycled)
			this.collision_poly.set_pts(poly_pts);
		else
			this.collision_poly = new cr.CollisionPoly(poly_pts);
	};
	var instanceProto = pluginProto.Instance.prototype;
	instanceProto.onCreate = function()
	{
		this.visible = (this.properties[0] === 0);	// 0=visible, 1=invisible
		this.isTicking = false;
		this.inAnimTrigger = false;
		this.collisionsEnabled = (this.properties[3] !== 0);
		if (!(this.type.animations.length === 1 && this.type.animations[0].frames.length === 1) && this.type.animations[0].speed !== 0)
		{
			this.runtime.tickMe(this);
			this.isTicking = true;
		}
		this.cur_animation = this.getAnimationByName(this.properties[1]) || this.type.animations[0];
		this.cur_frame = this.properties[2];
		if (this.cur_frame < 0)
			this.cur_frame = 0;
		if (this.cur_frame >= this.cur_animation.frames.length)
			this.cur_frame = this.cur_animation.frames.length - 1;
		var curanimframe = this.cur_animation.frames[this.cur_frame];
		this.collision_poly.set_pts(curanimframe.poly_pts);
		this.hotspotX = curanimframe.hotspotX;
		this.hotspotY = curanimframe.hotspotY;
		this.cur_anim_speed = this.cur_animation.speed;
		if (this.recycled)
			this.animTimer.reset();
		else
			this.animTimer = new cr.KahanAdder();
		this.frameStart = this.getNowTime();
		this.animPlaying = true;
		this.animRepeats = 0;
		this.animForwards = true;
		this.animTriggerName = "";
		this.changeAnimName = "";
		this.changeAnimFrom = 0;
		this.changeAnimFrame = -1;
		this.type.loadTextures();
		var i, leni, j, lenj;
		var anim, frame, uv, maintex;
		for (i = 0, leni = this.type.animations.length; i < leni; i++)
		{
			anim = this.type.animations[i];
			for (j = 0, lenj = anim.frames.length; j < lenj; j++)
			{
				frame = anim.frames[j];
				if (frame.width === 0)
				{
					frame.width = frame.texture_img.width;
					frame.height = frame.texture_img.height;
				}
				if (frame.spritesheeted)
				{
					maintex = frame.texture_img;
					uv = frame.sheetTex;
					uv.left = frame.offx / maintex.width;
					uv.top = frame.offy / maintex.height;
					uv.right = (frame.offx + frame.width) / maintex.width;
					uv.bottom = (frame.offy + frame.height) / maintex.height;
					if (frame.offx === 0 && frame.offy === 0 && frame.width === maintex.width && frame.height === maintex.height)
					{
						frame.spritesheeted = false;
					}
				}
			}
		}
		this.curFrame = this.cur_animation.frames[this.cur_frame];
		this.curWebGLTexture = this.curFrame.webGL_texture;
	};
	instanceProto.saveToJSON = function ()
	{
		var o = {
			"a": this.cur_animation.sid,
			"f": this.cur_frame,
			"cas": this.cur_anim_speed,
			"fs": this.frameStart,
			"ar": this.animRepeats,
			"at": this.animTimer.sum
		};
		if (!this.animPlaying)
			o["ap"] = this.animPlaying;
		if (!this.animForwards)
			o["af"] = this.animForwards;
		return o;
	};
	instanceProto.loadFromJSON = function (o)
	{
		var anim = this.getAnimationBySid(o["a"]);
		if (anim)
			this.cur_animation = anim;
		this.cur_frame = o["f"];
		if (this.cur_frame < 0)
			this.cur_frame = 0;
		if (this.cur_frame >= this.cur_animation.frames.length)
			this.cur_frame = this.cur_animation.frames.length - 1;
		this.cur_anim_speed = o["cas"];
		this.frameStart = o["fs"];
		this.animRepeats = o["ar"];
		this.animTimer.reset();
		this.animTimer.sum = o["at"];
		this.animPlaying = o.hasOwnProperty("ap") ? o["ap"] : true;
		this.animForwards = o.hasOwnProperty("af") ? o["af"] : true;
		this.curFrame = this.cur_animation.frames[this.cur_frame];
		this.curWebGLTexture = this.curFrame.webGL_texture;
		this.collision_poly.set_pts(this.curFrame.poly_pts);
		this.hotspotX = this.curFrame.hotspotX;
		this.hotspotY = this.curFrame.hotspotY;
	};
	instanceProto.animationFinish = function (reverse)
	{
		this.cur_frame = reverse ? 0 : this.cur_animation.frames.length - 1;
		this.animPlaying = false;
		this.animTriggerName = this.cur_animation.name;
		this.inAnimTrigger = true;
		this.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnAnyAnimFinished, this);
		this.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnAnimFinished, this);
		this.inAnimTrigger = false;
		this.animRepeats = 0;
	};
	instanceProto.getNowTime = function()
	{
		return this.animTimer.sum;
	};
	instanceProto.tick = function()
	{
		this.animTimer.add(this.runtime.getDt(this));
		if (this.changeAnimName.length)
			this.doChangeAnim();
		if (this.changeAnimFrame >= 0)
			this.doChangeAnimFrame();
		var now = this.getNowTime();
		var cur_animation = this.cur_animation;
		var prev_frame = cur_animation.frames[this.cur_frame];
		var next_frame;
		var cur_frame_time = prev_frame.duration / this.cur_anim_speed;
		if (this.animPlaying && now >= this.frameStart + cur_frame_time)
		{
			if (this.animForwards)
			{
				this.cur_frame++;
			}
			else
			{
				this.cur_frame--;
			}
			this.frameStart += cur_frame_time;
			if (this.cur_frame >= cur_animation.frames.length)
			{
				if (cur_animation.pingpong)
				{
					this.animForwards = false;
					this.cur_frame = cur_animation.frames.length - 2;
				}
				else if (cur_animation.loop)
				{
					this.cur_frame = cur_animation.repeatto;
				}
				else
				{
					this.animRepeats++;
					if (this.animRepeats >= cur_animation.repeatcount)
					{
						this.animationFinish(false);
					}
					else
					{
						this.cur_frame = cur_animation.repeatto;
					}
				}
			}
			if (this.cur_frame < 0)
			{
				if (cur_animation.pingpong)
				{
					this.cur_frame = 1;
					this.animForwards = true;
					if (!cur_animation.loop)
					{
						this.animRepeats++;
						if (this.animRepeats >= cur_animation.repeatcount)
						{
							this.animationFinish(true);
						}
					}
				}
				else
				{
					if (cur_animation.loop)
					{
						this.cur_frame = cur_animation.repeatto;
					}
					else
					{
						this.animRepeats++;
						if (this.animRepeats >= cur_animation.repeatcount)
						{
							this.animationFinish(true);
						}
						else
						{
							this.cur_frame = cur_animation.repeatto;
						}
					}
				}
			}
			if (this.cur_frame < 0)
				this.cur_frame = 0;
			else if (this.cur_frame >= cur_animation.frames.length)
				this.cur_frame = cur_animation.frames.length - 1;
			if (now > this.frameStart + (cur_animation.frames[this.cur_frame].duration / this.cur_anim_speed))
			{
				this.frameStart = now;
			}
			next_frame = cur_animation.frames[this.cur_frame];
			this.OnFrameChanged(prev_frame, next_frame);
			this.runtime.redraw = true;
		}
	};
	instanceProto.getAnimationByName = function (name_)
	{
		var i, len, a;
		for (i = 0, len = this.type.animations.length; i < len; i++)
		{
			a = this.type.animations[i];
			if (cr.equals_nocase(a.name, name_))
				return a;
		}
		return null;
	};
	instanceProto.getAnimationBySid = function (sid_)
	{
		var i, len, a;
		for (i = 0, len = this.type.animations.length; i < len; i++)
		{
			a = this.type.animations[i];
			if (a.sid === sid_)
				return a;
		}
		return null;
	};
	instanceProto.doChangeAnim = function ()
	{
		var prev_frame = this.cur_animation.frames[this.cur_frame];
		var anim = this.getAnimationByName(this.changeAnimName);
		this.changeAnimName = "";
		if (!anim)
			return;
		if (cr.equals_nocase(anim.name, this.cur_animation.name) && this.animPlaying)
			return;
		this.cur_animation = anim;
		this.cur_anim_speed = anim.speed;
		if (this.cur_frame < 0)
			this.cur_frame = 0;
		if (this.cur_frame >= this.cur_animation.frames.length)
			this.cur_frame = this.cur_animation.frames.length - 1;
		if (this.changeAnimFrom === 1)
			this.cur_frame = 0;
		this.animPlaying = true;
		this.frameStart = this.getNowTime();
		this.animForwards = true;
		this.OnFrameChanged(prev_frame, this.cur_animation.frames[this.cur_frame]);
		this.runtime.redraw = true;
	};
	instanceProto.doChangeAnimFrame = function ()
	{
		var prev_frame = this.cur_animation.frames[this.cur_frame];
		var prev_frame_number = this.cur_frame;
		this.cur_frame = cr.floor(this.changeAnimFrame);
		if (this.cur_frame < 0)
			this.cur_frame = 0;
		if (this.cur_frame >= this.cur_animation.frames.length)
			this.cur_frame = this.cur_animation.frames.length - 1;
		if (prev_frame_number !== this.cur_frame)
		{
			this.OnFrameChanged(prev_frame, this.cur_animation.frames[this.cur_frame]);
			this.frameStart = this.getNowTime();
			this.runtime.redraw = true;
		}
		this.changeAnimFrame = -1;
	};
	instanceProto.OnFrameChanged = function (prev_frame, next_frame)
	{
		var oldw = prev_frame.width;
		var oldh = prev_frame.height;
		var neww = next_frame.width;
		var newh = next_frame.height;
		if (oldw != neww)
			this.width *= (neww / oldw);
		if (oldh != newh)
			this.height *= (newh / oldh);
		this.hotspotX = next_frame.hotspotX;
		this.hotspotY = next_frame.hotspotY;
		this.collision_poly.set_pts(next_frame.poly_pts);
		this.set_bbox_changed();
		this.curFrame = next_frame;
		this.curWebGLTexture = next_frame.webGL_texture;
		var i, len, b;
		for (i = 0, len = this.behavior_insts.length; i < len; i++)
		{
			b = this.behavior_insts[i];
			if (b.onSpriteFrameChanged)
				b.onSpriteFrameChanged(prev_frame, next_frame);
		}
		this.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnFrameChanged, this);
	};
	instanceProto.draw = function(ctx)
	{
		ctx.globalAlpha = this.opacity;
		var cur_frame = this.curFrame;
		var spritesheeted = cur_frame.spritesheeted;
		var cur_image = cur_frame.texture_img;
		var myx = this.x;
		var myy = this.y;
		var w = this.width;
		var h = this.height;
		if (this.angle === 0 && w >= 0 && h >= 0)
		{
			myx -= this.hotspotX * w;
			myy -= this.hotspotY * h;
			if (this.runtime.pixel_rounding)
			{
				myx = (myx + 0.5) | 0;
				myy = (myy + 0.5) | 0;
			}
			if (spritesheeted)
			{
				ctx.drawImage(cur_image, cur_frame.offx, cur_frame.offy, cur_frame.width, cur_frame.height,
										 myx, myy, w, h);
			}
			else
			{
				ctx.drawImage(cur_image, myx, myy, w, h);
			}
		}
		else
		{
			if (this.runtime.pixel_rounding)
			{
				myx = (myx + 0.5) | 0;
				myy = (myy + 0.5) | 0;
			}
			ctx.save();
			var widthfactor = w > 0 ? 1 : -1;
			var heightfactor = h > 0 ? 1 : -1;
			ctx.translate(myx, myy);
			if (widthfactor !== 1 || heightfactor !== 1)
				ctx.scale(widthfactor, heightfactor);
			ctx.rotate(this.angle * widthfactor * heightfactor);
			var drawx = 0 - (this.hotspotX * cr.abs(w))
			var drawy = 0 - (this.hotspotY * cr.abs(h));
			if (spritesheeted)
			{
				ctx.drawImage(cur_image, cur_frame.offx, cur_frame.offy, cur_frame.width, cur_frame.height,
										 drawx, drawy, cr.abs(w), cr.abs(h));
			}
			else
			{
				ctx.drawImage(cur_image, drawx, drawy, cr.abs(w), cr.abs(h));
			}
			ctx.restore();
		}
		/*
		ctx.strokeStyle = "#f00";
		ctx.lineWidth = 3;
		ctx.beginPath();
		this.collision_poly.cache_poly(this.width, this.height, this.angle);
		var i, len, ax, ay, bx, by;
		for (i = 0, len = this.collision_poly.pts_count; i < len; i++)
		{
			ax = this.collision_poly.pts_cache[i*2] + this.x;
			ay = this.collision_poly.pts_cache[i*2+1] + this.y;
			bx = this.collision_poly.pts_cache[((i+1)%len)*2] + this.x;
			by = this.collision_poly.pts_cache[((i+1)%len)*2+1] + this.y;
			ctx.moveTo(ax, ay);
			ctx.lineTo(bx, by);
		}
		ctx.stroke();
		ctx.closePath();
		*/
		/*
		if (this.behavior_insts.length >= 1 && this.behavior_insts[0].draw)
		{
			this.behavior_insts[0].draw(ctx);
		}
		*/
	};
	instanceProto.drawGL = function(glw)
	{
		glw.setTexture(this.curWebGLTexture);
		glw.setOpacity(this.opacity);
		var cur_frame = this.curFrame;
		var q = this.bquad;
		if (this.runtime.pixel_rounding)
		{
			var ox = ((this.x + 0.5) | 0) - this.x;
			var oy = ((this.y + 0.5) | 0) - this.y;
			if (cur_frame.spritesheeted)
				glw.quadTex(q.tlx + ox, q.tly + oy, q.trx + ox, q.try_ + oy, q.brx + ox, q.bry + oy, q.blx + ox, q.bly + oy, cur_frame.sheetTex);
			else
				glw.quad(q.tlx + ox, q.tly + oy, q.trx + ox, q.try_ + oy, q.brx + ox, q.bry + oy, q.blx + ox, q.bly + oy);
		}
		else
		{
			if (cur_frame.spritesheeted)
				glw.quadTex(q.tlx, q.tly, q.trx, q.try_, q.brx, q.bry, q.blx, q.bly, cur_frame.sheetTex);
			else
				glw.quad(q.tlx, q.tly, q.trx, q.try_, q.brx, q.bry, q.blx, q.bly);
		}
	};
	instanceProto.getImagePointIndexByName = function(name_)
	{
		var cur_frame = this.curFrame;
		var i, len;
		for (i = 0, len = cur_frame.image_points.length; i < len; i++)
		{
			if (cr.equals_nocase(name_, cur_frame.image_points[i][0]))
				return i;
		}
		return -1;
	};
	instanceProto.getImagePoint = function(imgpt, getX)
	{
		var cur_frame = this.curFrame;
		var image_points = cur_frame.image_points;
		var index;
		if (cr.is_string(imgpt))
			index = this.getImagePointIndexByName(imgpt);
		else
			index = imgpt - 1;	// 0 is origin
		index = cr.floor(index);
		if (index < 0 || index >= image_points.length)
			return getX ? this.x : this.y;	// return origin
		var x = (image_points[index][1] - cur_frame.hotspotX) * this.width;
		var y = image_points[index][2];
		y = (y - cur_frame.hotspotY) * this.height;
		var cosa = Math.cos(this.angle);
		var sina = Math.sin(this.angle);
		var x_temp = (x * cosa) - (y * sina);
		y = (y * cosa) + (x * sina);
		x = x_temp;
		x += this.x;
		y += this.y;
		return getX ? x : y;
	};
	function Cnds() {};
	var arrCache = [];
	function allocArr()
	{
		if (arrCache.length)
			return arrCache.pop();
		else
			return [0, 0, 0];
	};
	function freeArr(a)
	{
		a[0] = 0;
		a[1] = 0;
		a[2] = 0;
		arrCache.push(a);
	};
	function makeCollKey(a, b)
	{
		if (a < b)
			return "" + a + "," + b;
		else
			return "" + b + "," + a;
	};
	function collmemory_add(collmemory, a, b, tickcount)
	{
		var a_uid = a.uid;
		var b_uid = b.uid;
		var key = makeCollKey(a_uid, b_uid);
		if (collmemory.hasOwnProperty(key))
		{
			collmemory[key][2] = tickcount;
			return;
		}
		var arr = allocArr();
		arr[0] = a_uid;
		arr[1] = b_uid;
		arr[2] = tickcount;
		collmemory[key] = arr;
	};
	function collmemory_remove(collmemory, a, b)
	{
		var key = makeCollKey(a.uid, b.uid);
		if (collmemory.hasOwnProperty(key))
		{
			freeArr(collmemory[key]);
			delete collmemory[key];
		}
	};
	function collmemory_removeInstance(collmemory, inst)
	{
		var uid = inst.uid;
		var p, entry;
		for (p in collmemory)
		{
			if (collmemory.hasOwnProperty(p))
			{
				entry = collmemory[p];
				if (entry[0] === uid || entry[1] === uid)
				{
					freeArr(collmemory[p]);
					delete collmemory[p];
				}
			}
		}
	};
	var last_coll_tickcount = -2;
	function collmemory_has(collmemory, a, b)
	{
		var key = makeCollKey(a.uid, b.uid);
		if (collmemory.hasOwnProperty(key))
		{
			last_coll_tickcount = collmemory[key][2];
			return true;
		}
		else
		{
			last_coll_tickcount = -2;
			return false;
		}
	};
	var candidates = [];
	Cnds.prototype.OnCollision = function (rtype)
	{
		if (!rtype)
			return false;
		var runtime = this.runtime;
		var cnd = runtime.getCurrentCondition();
		var ltype = cnd.type;
		if (!cnd.extra.collmemory)
		{
			cnd.extra.collmemory = {};
			runtime.addDestroyCallback((function (collmemory) {
				return function(inst) {
					collmemory_removeInstance(collmemory, inst);
				};
			})(cnd.extra.collmemory));
		}
		var collmemory = cnd.extra.collmemory;
		var lsol = ltype.getCurrentSol();
		var rsol = rtype.getCurrentSol();
		var linstances = lsol.getObjects();
		var rinstances;
		var l, linst, r, rinst;
		var curlsol, currsol;
		var tickcount = this.runtime.tickcount;
		var lasttickcount = tickcount - 1;
		var exists, run;
		var current_event = runtime.getCurrentEventStack().current_event;
		var orblock = current_event.orblock;
		for (l = 0; l < linstances.length; l++)
		{
			linst = linstances[l];
			if (rsol.select_all)
			{
				linst.update_bbox();
				this.runtime.getCollisionCandidates(linst.layer, rtype, linst.bbox, candidates);
				rinstances = candidates;
			}
			else
				rinstances = rsol.getObjects();
			for (r = 0; r < rinstances.length; r++)
			{
				rinst = rinstances[r];
				if (runtime.testOverlap(linst, rinst) || runtime.checkRegisteredCollision(linst, rinst))
				{
					exists = collmemory_has(collmemory, linst, rinst);
					run = (!exists || (last_coll_tickcount < lasttickcount));
					collmemory_add(collmemory, linst, rinst, tickcount);
					if (run)
					{
						runtime.pushCopySol(current_event.solModifiers);
						curlsol = ltype.getCurrentSol();
						currsol = rtype.getCurrentSol();
						curlsol.select_all = false;
						currsol.select_all = false;
						if (ltype === rtype)
						{
							curlsol.instances.length = 2;	// just use lsol, is same reference as rsol
							curlsol.instances[0] = linst;
							curlsol.instances[1] = rinst;
							ltype.applySolToContainer();
						}
						else
						{
							curlsol.instances.length = 1;
							currsol.instances.length = 1;
							curlsol.instances[0] = linst;
							currsol.instances[0] = rinst;
							ltype.applySolToContainer();
							rtype.applySolToContainer();
						}
						current_event.retrigger();
						runtime.popSol(current_event.solModifiers);
					}
				}
				else
				{
					collmemory_remove(collmemory, linst, rinst);
				}
			}
			candidates.length = 0;
		}
		return false;
	};
	var rpicktype = null;
	var rtopick = new cr.ObjectSet();
	var needscollisionfinish = false;
	function DoOverlapCondition(rtype, offx, offy)
	{
		if (!rtype)
			return false;
		var do_offset = (offx !== 0 || offy !== 0);
		var oldx, oldy, ret = false, r, lenr, rinst;
		var cnd = this.runtime.getCurrentCondition();
		var ltype = cnd.type;
		var inverted = cnd.inverted;
		var rsol = rtype.getCurrentSol();
		var orblock = this.runtime.getCurrentEventStack().current_event.orblock;
		var rinstances;
		if (rsol.select_all)
		{
			this.update_bbox();
			this.runtime.getCollisionCandidates(this.layer, rtype, this.bbox, candidates);
			rinstances = candidates;
		}
		else if (orblock)
			rinstances = rsol.else_instances;
		else
			rinstances = rsol.instances;
		rpicktype = rtype;
		needscollisionfinish = (ltype !== rtype && !inverted);
		if (do_offset)
		{
			oldx = this.x;
			oldy = this.y;
			this.x += offx;
			this.y += offy;
			this.set_bbox_changed();
		}
		for (r = 0, lenr = rinstances.length; r < lenr; r++)
		{
			rinst = rinstances[r];
			if (this.runtime.testOverlap(this, rinst))
			{
				ret = true;
				if (inverted)
					break;
				if (ltype !== rtype)
					rtopick.add(rinst);
			}
		}
		if (do_offset)
		{
			this.x = oldx;
			this.y = oldy;
			this.set_bbox_changed();
		}
		candidates.length = 0;
		return ret;
	};
	typeProto.finish = function (do_pick)
	{
		if (!needscollisionfinish)
			return;
		if (do_pick)
		{
			var orblock = this.runtime.getCurrentEventStack().current_event.orblock;
			var sol = rpicktype.getCurrentSol();
			var topick = rtopick.valuesRef();
			var i, len, inst;
			if (sol.select_all)
			{
				sol.select_all = false;
				sol.instances.length = topick.length;
				for (i = 0, len = topick.length; i < len; i++)
				{
					sol.instances[i] = topick[i];
				}
				if (orblock)
				{
					sol.else_instances.length = 0;
					for (i = 0, len = rpicktype.instances.length; i < len; i++)
					{
						inst = rpicktype.instances[i];
						if (!rtopick.contains(inst))
							sol.else_instances.push(inst);
					}
				}
			}
			else
			{
				if (orblock)
				{
					var initsize = sol.instances.length;
					sol.instances.length = initsize + topick.length;
					for (i = 0, len = topick.length; i < len; i++)
					{
						sol.instances[initsize + i] = topick[i];
						cr.arrayFindRemove(sol.else_instances, topick[i]);
					}
				}
				else
				{
					cr.shallowAssignArray(sol.instances, topick);
				}
			}
			rpicktype.applySolToContainer();
		}
		rtopick.clear();
		needscollisionfinish = false;
	};
	Cnds.prototype.IsOverlapping = function (rtype)
	{
		return DoOverlapCondition.call(this, rtype, 0, 0);
	};
	Cnds.prototype.IsOverlappingOffset = function (rtype, offx, offy)
	{
		return DoOverlapCondition.call(this, rtype, offx, offy);
	};
	Cnds.prototype.IsAnimPlaying = function (animname)
	{
		if (this.changeAnimName.length)
			return cr.equals_nocase(this.changeAnimName, animname);
		else
			return cr.equals_nocase(this.cur_animation.name, animname);
	};
	Cnds.prototype.CompareFrame = function (cmp, framenum)
	{
		return cr.do_cmp(this.cur_frame, cmp, framenum);
	};
	Cnds.prototype.CompareAnimSpeed = function (cmp, x)
	{
		var s = (this.animForwards ? this.cur_anim_speed : -this.cur_anim_speed);
		return cr.do_cmp(s, cmp, x);
	};
	Cnds.prototype.OnAnimFinished = function (animname)
	{
		return cr.equals_nocase(this.animTriggerName, animname);
	};
	Cnds.prototype.OnAnyAnimFinished = function ()
	{
		return true;
	};
	Cnds.prototype.OnFrameChanged = function ()
	{
		return true;
	};
	Cnds.prototype.IsMirrored = function ()
	{
		return this.width < 0;
	};
	Cnds.prototype.IsFlipped = function ()
	{
		return this.height < 0;
	};
	Cnds.prototype.OnURLLoaded = function ()
	{
		return true;
	};
	Cnds.prototype.IsCollisionEnabled = function ()
	{
		return this.collisionsEnabled;
	};
	pluginProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.Spawn = function (obj, layer, imgpt)
	{
		if (!obj || !layer)
			return;
		var inst = this.runtime.createInstance(obj, layer, this.getImagePoint(imgpt, true), this.getImagePoint(imgpt, false));
		if (!inst)
			return;
		if (typeof inst.angle !== "undefined")
		{
			inst.angle = this.angle;
			inst.set_bbox_changed();
		}
		this.runtime.isInOnDestroy++;
		var i, len, s;
		this.runtime.trigger(Object.getPrototypeOf(obj.plugin).cnds.OnCreated, inst);
		if (inst.is_contained)
		{
			for (i = 0, len = inst.siblings.length; i < len; i++)
			{
				s = inst.siblings[i];
				this.runtime.trigger(Object.getPrototypeOf(s.type.plugin).cnds.OnCreated, s);
			}
		}
		this.runtime.isInOnDestroy--;
		var cur_act = this.runtime.getCurrentAction();
		var reset_sol = false;
		if (cr.is_undefined(cur_act.extra.Spawn_LastExec) || cur_act.extra.Spawn_LastExec < this.runtime.execcount)
		{
			reset_sol = true;
			cur_act.extra.Spawn_LastExec = this.runtime.execcount;
		}
		var sol;
		if (obj != this.type)
		{
			sol = obj.getCurrentSol();
			sol.select_all = false;
			if (reset_sol)
			{
				sol.instances.length = 1;
				sol.instances[0] = inst;
			}
			else
				sol.instances.push(inst);
			if (inst.is_contained)
			{
				for (i = 0, len = inst.siblings.length; i < len; i++)
				{
					s = inst.siblings[i];
					sol = s.type.getCurrentSol();
					sol.select_all = false;
					if (reset_sol)
					{
						sol.instances.length = 1;
						sol.instances[0] = s;
					}
					else
						sol.instances.push(s);
				}
			}
		}
	};
	Acts.prototype.SetEffect = function (effect)
	{
		this.compositeOp = cr.effectToCompositeOp(effect);
		cr.setGLBlend(this, effect, this.runtime.gl);
		this.runtime.redraw = true;
	};
	Acts.prototype.StopAnim = function ()
	{
		this.animPlaying = false;
	};
	Acts.prototype.StartAnim = function (from)
	{
		this.animPlaying = true;
		this.frameStart = this.getNowTime();
		if (from === 1 && this.cur_frame !== 0)
		{
			this.changeAnimFrame = 0;
			if (!this.inAnimTrigger)
				this.doChangeAnimFrame();
		}
		if (!this.isTicking)
		{
			this.runtime.tickMe(this);
			this.isTicking = true;
		}
	};
	Acts.prototype.SetAnim = function (animname, from)
	{
		this.changeAnimName = animname;
		this.changeAnimFrom = from;
		if (!this.isTicking)
		{
			this.runtime.tickMe(this);
			this.isTicking = true;
		}
		if (!this.inAnimTrigger)
			this.doChangeAnim();
	};
	Acts.prototype.SetAnimFrame = function (framenumber)
	{
		this.changeAnimFrame = framenumber;
		if (!this.isTicking)
		{
			this.runtime.tickMe(this);
			this.isTicking = true;
		}
		if (!this.inAnimTrigger)
			this.doChangeAnimFrame();
	};
	Acts.prototype.SetAnimSpeed = function (s)
	{
		this.cur_anim_speed = cr.abs(s);
		this.animForwards = (s >= 0);
		if (!this.isTicking)
		{
			this.runtime.tickMe(this);
			this.isTicking = true;
		}
	};
	Acts.prototype.SetMirrored = function (m)
	{
		var neww = cr.abs(this.width) * (m === 0 ? -1 : 1);
		if (this.width === neww)
			return;
		this.width = neww;
		this.set_bbox_changed();
	};
	Acts.prototype.SetFlipped = function (f)
	{
		var newh = cr.abs(this.height) * (f === 0 ? -1 : 1);
		if (this.height === newh)
			return;
		this.height = newh;
		this.set_bbox_changed();
	};
	Acts.prototype.SetScale = function (s)
	{
		var cur_frame = this.curFrame;
		var mirror_factor = (this.width < 0 ? -1 : 1);
		var flip_factor = (this.height < 0 ? -1 : 1);
		var new_width = cur_frame.width * s * mirror_factor;
		var new_height = cur_frame.height * s * flip_factor;
		if (this.width !== new_width || this.height !== new_height)
		{
			this.width = new_width;
			this.height = new_height;
			this.set_bbox_changed();
		}
	};
	Acts.prototype.LoadURL = function (url_, resize_)
	{
		var img = new Image();
		var self = this;
		var curFrame_ = this.curFrame;
		img.onload = function ()
		{
			if (curFrame_.texture_img.src === img.src)
			{
				if (self.runtime.glwrap && self.curFrame === curFrame_)
					self.curWebGLTexture = curFrame_.webGL_texture;
				self.runtime.redraw = true;
				self.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnURLLoaded, self);
				return;
			}
			curFrame_.texture_img = img;
			curFrame_.offx = 0;
			curFrame_.offy = 0;
			curFrame_.width = img.width;
			curFrame_.height = img.height;
			curFrame_.spritesheeted = false;
			curFrame_.datauri = "";
			if (self.runtime.glwrap)
			{
				if (curFrame_.webGL_texture)
					self.runtime.glwrap.deleteTexture(curFrame_.webGL_texture);
				curFrame_.webGL_texture = self.runtime.glwrap.loadTexture(img, false, self.runtime.linearSampling);
				if (self.curFrame === curFrame_)
					self.curWebGLTexture = curFrame_.webGL_texture;
				self.type.updateAllCurrentTexture();
			}
			if (resize_ === 0)		// resize to image size
			{
				self.width = img.width;
				self.height = img.height;
				self.set_bbox_changed();
			}
			self.runtime.redraw = true;
			self.runtime.trigger(cr.plugins_.Sprite.prototype.cnds.OnURLLoaded, self);
		};
		if (url_.substr(0, 5) !== "data:")
			img.crossOrigin = 'anonymous';
		img.src = url_;
	};
	Acts.prototype.SetCollisions = function (set_)
	{
		if (this.collisionsEnabled === (set_ !== 0))
			return;		// no change
		this.collisionsEnabled = (set_ !== 0);
		if (this.collisionsEnabled)
			this.set_bbox_changed();		// needs to be added back to cells
		else
		{
			if (this.collcells.right >= this.collcells.left)
				this.type.collision_grid.update(this, this.collcells, null);
			this.collcells.set(0, 0, -1, -1);
		}
	};
	pluginProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.AnimationFrame = function (ret)
	{
		ret.set_int(this.cur_frame);
	};
	Exps.prototype.AnimationFrameCount = function (ret)
	{
		ret.set_int(this.cur_animation.frames.length);
	};
	Exps.prototype.AnimationName = function (ret)
	{
		ret.set_string(this.cur_animation.name);
	};
	Exps.prototype.AnimationSpeed = function (ret)
	{
		ret.set_float(this.animForwards ? this.cur_anim_speed : -this.cur_anim_speed);
	};
	Exps.prototype.ImagePointX = function (ret, imgpt)
	{
		ret.set_float(this.getImagePoint(imgpt, true));
	};
	Exps.prototype.ImagePointY = function (ret, imgpt)
	{
		ret.set_float(this.getImagePoint(imgpt, false));
	};
	Exps.prototype.ImagePointCount = function (ret)
	{
		ret.set_int(this.curFrame.image_points.length);
	};
	Exps.prototype.ImageWidth = function (ret)
	{
		ret.set_float(this.curFrame.width);
	};
	Exps.prototype.ImageHeight = function (ret)
	{
		ret.set_float(this.curFrame.height);
	};
	pluginProto.exps = new Exps();
}());
/* global cr,log,assert2 */
/* jshint globalstrict: true */
/* jshint strict: true */
;
;
cr.plugins_.Spritefont2 = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var pluginProto = cr.plugins_.Spritefont2.prototype;
	pluginProto.onCreate = function ()
	{
	};
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	typeProto.onCreate = function()
	{
		if (this.is_family)
			return;
		this.texture_img = new Image();
		this.texture_img["idtkLoadDisposed"] = true;
		this.texture_img.src = this.texture_file;
		this.runtime.waitForImageLoad(this.texture_img);
		this.webGL_texture = null;
	};
	typeProto.onLostWebGLContext = function ()
	{
		if (this.is_family)
			return;
		this.webGL_texture = null;
	};
	typeProto.onRestoreWebGLContext = function ()
	{
		if (this.is_family || !this.instances.length)
			return;
		if (!this.webGL_texture)
		{
			this.webGL_texture = this.runtime.glwrap.loadTexture(this.texture_img, false, this.runtime.linearSampling, this.texture_pixelformat);
		}
		var i, len;
		for (i = 0, len = this.instances.length; i < len; i++)
			this.instances[i].webGL_texture = this.webGL_texture;
	};
	typeProto.unloadTextures = function ()
	{
		if (this.is_family || this.instances.length || !this.webGL_texture)
			return;
		this.runtime.glwrap.deleteTexture(this.webGL_texture);
		this.webGL_texture = null;
	};
	typeProto.preloadCanvas2D = function (ctx)
	{
		ctx.drawImage(this.texture_img, 0, 0);
	};
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
	};
	var instanceProto = pluginProto.Instance.prototype;
	instanceProto.onDestroy = function()
	{
		freeAllLines (this.lines);
		freeAllClip  (this.clipList);
		freeAllClipUV(this.clipUV);
		cr.wipe(this.characterWidthList);
	};
	instanceProto.onCreate = function()
	{
		this.texture_img      = this.type.texture_img;
		this.characterWidth   = this.properties[0];
		this.characterHeight  = this.properties[1];
		this.characterSet     = this.properties[2];
		this.text             = this.properties[3];
		this.characterScale   = this.properties[4];
		this.visible          = (this.properties[5] === 0);	// 0=visible, 1=invisible
		this.halign           = this.properties[6]/2.0;			// 0=left, 1=center, 2=right
		this.valign           = this.properties[7]/2.0;			// 0=top, 1=center, 2=bottom
		this.wrapbyword       = (this.properties[9] === 0);	// 0=word, 1=character
		this.characterSpacing = this.properties[10];
		this.lineHeight       = this.properties[11];
		this.textWidth  = 0;
		this.textHeight = 0;
		if (this.recycled)
		{
			this.lines.length = 0;
			cr.wipe(this.clipList);
			cr.wipe(this.clipUV);
			cr.wipe(this.characterWidthList);
		}
		else
		{
			this.lines = [];
			this.clipList = {};
			this.clipUV = {};
			this.characterWidthList = {};
		}
		this.text_changed = true;
		this.lastwrapwidth = this.width;
		if (this.runtime.glwrap)
		{
			if (!this.type.webGL_texture)
			{
				this.type.webGL_texture = this.runtime.glwrap.loadTexture(this.type.texture_img, false, this.runtime.linearSampling, this.type.texture_pixelformat);
			}
			this.webGL_texture = this.type.webGL_texture;
		}
		this.SplitSheet();
	};
	instanceProto.saveToJSON = function ()
	{
		var save = {
			"t": this.text,
			"csc": this.characterScale,
			"csp": this.characterSpacing,
			"lh": this.lineHeight,
			"tw": this.textWidth,
			"th": this.textHeight,
			"lrt": this.last_render_tick,
			"cw": {}
		};
		for (var ch in this.characterWidthList)
			save["cw"][ch] = this.characterWidthList[ch];
		return save;
	};
	instanceProto.loadFromJSON = function (o)
	{
		this.text = o["t"];
		this.characterScale = o["csc"];
		this.characterSpacing = o["csp"];
		this.lineHeight = o["lh"];
		this.textWidth = o["tw"];
		this.textHeight = o["th"];
		this.last_render_tick = o["lrt"];
		for(var ch in o["cw"])
			this.characterWidthList[ch] = o["cw"][ch];
		this.text_changed = true;
		this.lastwrapwidth = this.width;
	};
	function trimRight(text)
	{
		return text.replace(/\s\s*$/, '');
	}
	var MAX_CACHE_SIZE = 1000;
	function alloc(cache,Constructor)
	{
		if (cache.length)
			return cache.pop();
		else
			return new Constructor();
	}
	function free(cache,data)
	{
		if (cache.length < MAX_CACHE_SIZE)
		{
			cache.push(data);
		}
	}
	function freeAll(cache,dataList,isArray)
	{
		if (isArray) {
			var i, len;
			for (i = 0, len = dataList.length; i < len; i++)
			{
				free(cache,dataList[i]);
			}
			dataList.length = 0;
		} else {
			var prop;
			for(prop in dataList) {
				if(Object.prototype.hasOwnProperty.call(dataList,prop)) {
					free(cache,dataList[prop]);
					delete dataList[prop];
				}
			}
		}
	}
	function addLine(inst,lineIndex,cur_line) {
		var lines = inst.lines;
		var line;
		cur_line = trimRight(cur_line);
		if (lineIndex >= lines.length)
			lines.push(allocLine());
		line = lines[lineIndex];
		line.text = cur_line;
		line.width = inst.measureWidth(cur_line);
		inst.textWidth = cr.max(inst.textWidth,line.width);
	}
	var linesCache = [];
	function allocLine()       { return alloc(linesCache,Object); }
	function freeLine(l)       { free(linesCache,l); }
	function freeAllLines(arr) { freeAll(linesCache,arr,true); }
	function addClip(obj,property,x,y,w,h) {
		if (obj[property] === undefined) {
			obj[property] = alloc(clipCache,Object);
		}
		obj[property].x = x;
		obj[property].y = y;
		obj[property].w = w;
		obj[property].h = h;
	}
	var clipCache = [];
	function allocClip()      { return alloc(clipCache,Object); }
	function freeAllClip(obj) { freeAll(clipCache,obj,false);}
	function addClipUV(obj,property,left,top,right,bottom) {
		if (obj[property] === undefined) {
			obj[property] = alloc(clipUVCache,cr.rect);
		}
		obj[property].left   = left;
		obj[property].top    = top;
		obj[property].right  = right;
		obj[property].bottom = bottom;
	}
	var clipUVCache = [];
	function allocClipUV()      { return alloc(clipUVCache,cr.rect);}
	function freeAllClipUV(obj) { freeAll(clipUVCache,obj,false);}
	instanceProto.SplitSheet = function() {
		var texture      = this.texture_img;
		var texWidth     = texture.width;
		var texHeight    = texture.height;
		var charWidth    = this.characterWidth;
		var charHeight   = this.characterHeight;
		var charU        = charWidth /texWidth;
		var charV        = charHeight/texHeight;
		var charSet      = this.characterSet ;
		var cols = Math.floor(texWidth/charWidth);
		var rows = Math.floor(texHeight/charHeight);
		for ( var c = 0; c < charSet.length; c++) {
			if  (c >= cols * rows) break;
			var x = c%cols;
			var y = Math.floor(c/cols);
			var letter = charSet.charAt(c);
			if (this.runtime.glwrap) {
				addClipUV(
					this.clipUV, letter,
					x * charU ,
					y * charV ,
					(x+1) * charU ,
					(y+1) * charV
				);
			} else {
				addClip(
					this.clipList, letter,
					x * charWidth,
					y * charHeight,
					charWidth,
					charHeight
				);
			}
		}
	};
	/*
     *	Word-Wrapping
     */
	var wordsCache = [];
	pluginProto.TokeniseWords = function (text)
	{
		wordsCache.length = 0;
		var cur_word = "";
		var ch;
		var i = 0;
		while (i < text.length)
		{
			ch = text.charAt(i);
			if (ch === "\n")
			{
				if (cur_word.length)
				{
					wordsCache.push(cur_word);
					cur_word = "";
				}
				wordsCache.push("\n");
				++i;
			}
			else if (ch === " " || ch === "\t" || ch === "-")
			{
				do {
					cur_word += text.charAt(i);
					i++;
				}
				while (i < text.length && (text.charAt(i) === " " || text.charAt(i) === "\t"));
				wordsCache.push(cur_word);
				cur_word = "";
			}
			else if (i < text.length)
			{
				cur_word += ch;
				i++;
			}
		}
		if (cur_word.length)
			wordsCache.push(cur_word);
	};
	pluginProto.WordWrap = function (inst)
	{
		var text = inst.text;
		var lines = inst.lines;
		if (!text || !text.length)
		{
			freeAllLines(lines);
			return;
		}
		var width = inst.width;
		if (width <= 2.0)
		{
			freeAllLines(lines);
			return;
		}
		var charWidth = inst.characterWidth;
		var charScale = inst.characterScale;
		var charSpacing = inst.characterSpacing;
		if ( (text.length * (charWidth * charScale + charSpacing) - charSpacing) <= width && text.indexOf("\n") === -1)
		{
			var all_width = inst.measureWidth(text);
			if (all_width <= width)
			{
				freeAllLines(lines);
				lines.push(allocLine());
				lines[0].text = text;
				lines[0].width = all_width;
				inst.textWidth  = all_width;
				inst.textHeight = inst.characterHeight * charScale + inst.lineHeight;
				return;
			}
		}
		var wrapbyword = inst.wrapbyword;
		this.WrapText(inst);
		inst.textHeight = lines.length * (inst.characterHeight * charScale + inst.lineHeight);
	};
	pluginProto.WrapText = function (inst)
	{
		var wrapbyword = inst.wrapbyword;
		var text       = inst.text;
		var lines      = inst.lines;
		var width      = inst.width;
		var wordArray;
		if (wrapbyword) {
			this.TokeniseWords(text);	// writes to wordsCache
			wordArray = wordsCache;
		} else {
			wordArray = text;
		}
		var cur_line = "";
		var prev_line;
		var line_width;
		var i;
		var lineIndex = 0;
		var line;
		var ignore_newline = false;
		for (i = 0; i < wordArray.length; i++)
		{
			if (wordArray[i] === "\n")
			{
				if (ignore_newline === true) {
					ignore_newline = false;
				} else {
					addLine(inst,lineIndex,cur_line);
					lineIndex++;
				}
				cur_line = "";
				continue;
			}
			ignore_newline = false;
			prev_line = cur_line;
			cur_line += wordArray[i];
			line_width = inst.measureWidth(trimRight(cur_line));
			if (line_width > width)
			{
				if (prev_line === "") {
					addLine(inst,lineIndex,cur_line);
					cur_line = "";
					ignore_newline = true;
				} else {
					addLine(inst,lineIndex,prev_line);
					cur_line = wordArray[i];
				}
				lineIndex++;
				if (!wrapbyword && cur_line === " ")
					cur_line = "";
			}
		}
		if (trimRight(cur_line).length)
		{
			addLine(inst,lineIndex,cur_line);
			lineIndex++;
		}
		for (i = lineIndex; i < lines.length; i++)
			freeLine(lines[i]);
		lines.length = lineIndex;
	};
	instanceProto.measureWidth = function(text) {
		var spacing = this.characterSpacing;
		var len     = text.length;
		var width   = 0;
		for (var i = 0; i < len; i++) {
			width += this.getCharacterWidth(text.charAt(i)) * this.characterScale + spacing;
		}
		width -= (width > 0) ? spacing : 0;
		return width;
	};
	/***/
	instanceProto.getCharacterWidth = function(character) {
		var widthList = this.characterWidthList;
		if (widthList[character] !== undefined) {
			return widthList[character];
		} else {
			return this.characterWidth;
		}
	};
	instanceProto.rebuildText = function() {
		if (this.text_changed || this.width !== this.lastwrapwidth) {
			this.textWidth = 0;
			this.textHeight = 0;
			this.type.plugin.WordWrap(this);
			this.text_changed = false;
			this.lastwrapwidth = this.width;
		}
	};
	var EPSILON = 0.00001;
	instanceProto.draw = function(ctx, glmode)
	{
		var texture = this.texture_img;
		if (this.text !== "" && texture != null) {
			this.rebuildText();
			if (this.height < this.characterHeight*this.characterScale + this.lineHeight) {
				return;
			}
			ctx.globalAlpha = this.opacity;
			var myx = this.x;
			var myy = this.y;
			if (this.runtime.pixel_rounding)
			{
				myx = (myx + 0.5) | 0;
				myy = (myy + 0.5) | 0;
			}
			ctx.save();
			ctx.translate(myx, myy);
			ctx.rotate(this.angle);
			var ha         = this.halign;
			var va         = this.valign;
			var scale      = this.characterScale;
			var charHeight = this.characterHeight * scale;
			var lineHeight = this.lineHeight;
			var charSpace  = this.characterSpacing;
			var lines = this.lines;
			var textHeight = this.textHeight;
			var halign;
			var valign = va * cr.max(0,(this.height - textHeight));
			var offx = -(this.hotspotX * this.width);
			var offy = -(this.hotspotY * this.height);
			offy += valign;
			var drawX ;
			var drawY = offy;
			var roundX, roundY;
			for(var i = 0; i < lines.length; i++) {
				var line = lines[i].text;
				var len  = lines[i].width;
				halign = ha * cr.max(0,this.width - len);
				drawX = offx + halign;
				drawY += lineHeight;
				for(var j = 0; j < line.length; j++) {
					var letter = line.charAt(j);
					var clip = this.clipList[letter];
					if ( drawX + this.getCharacterWidth(letter) * scale > this.width + EPSILON ) {
						break;
					}
					if (clip !== undefined) {
						roundX = drawX;
						roundY = drawY;
						if (this.angle === 0)
						{
							roundX = Math.round(roundX);
							roundY = Math.round(roundY);
						}
						ctx.drawImage( this.texture_img,
									 clip.x, clip.y, clip.w, clip.h,
									 roundX,roundY,clip.w*scale,clip.h*scale);
					}
					drawX  += this.getCharacterWidth(letter) * scale + charSpace;
				}
				drawY += charHeight;
				if ( drawY + charHeight + lineHeight > this.height) {
					break;
				}
			}
			ctx.restore();
		}
	};
	var dQuad = new cr.quad();
	function rotateQuad(quad,cosa,sina) {
		var x_temp;
		x_temp   = (quad.tlx * cosa) - (quad.tly * sina);
		quad.tly = (quad.tly * cosa) + (quad.tlx * sina);
		quad.tlx = x_temp;
		x_temp    = (quad.trx * cosa) - (quad.try_ * sina);
		quad.try_ = (quad.try_ * cosa) + (quad.trx * sina);
		quad.trx  = x_temp;
		x_temp   = (quad.blx * cosa) - (quad.bly * sina);
		quad.bly = (quad.bly * cosa) + (quad.blx * sina);
		quad.blx = x_temp;
		x_temp    = (quad.brx * cosa) - (quad.bry * sina);
		quad.bry = (quad.bry * cosa) + (quad.brx * sina);
		quad.brx  = x_temp;
	}
	instanceProto.drawGL = function(glw)
	{
		glw.setTexture(this.webGL_texture);
		glw.setOpacity(this.opacity);
		if (this.text !== "") {
			this.rebuildText();
			if (this.height < this.characterHeight*this.characterScale + this.lineHeight) {
				return;
			}
			this.update_bbox();
			var q = this.bquad;
			var ox = 0;
			var oy = 0;
			if (this.runtime.pixel_rounding)
			{
				ox = ((this.x + 0.5) | 0) - this.x;
				oy = ((this.y + 0.5) | 0) - this.y;
			}
			var angle      = this.angle;
			var ha         = this.halign;
			var va         = this.valign;
			var scale      = this.characterScale;
			var charHeight = this.characterHeight * scale;   // to precalculate in onCreate or on change
			var lineHeight = this.lineHeight;
			var charSpace  = this.characterSpacing;
			var lines = this.lines;
			var textHeight = this.textHeight;
			var cosa,sina;
			if (angle !== 0)
			{
				cosa = Math.cos(angle);
				sina = Math.sin(angle);
			}
			var halign;
			var valign = va * cr.max(0,(this.height - textHeight));
			var offx = q.tlx + ox;
			var offy = q.tly + oy;
			var drawX ;
			var drawY = valign;
			var roundX, roundY;
			for(var i = 0; i < lines.length; i++) {
				var line       = lines[i].text;
				var lineWidth  = lines[i].width;
				halign = ha * cr.max(0,this.width - lineWidth);
				drawX = halign;
				drawY += lineHeight;
				for(var j = 0; j < line.length; j++) {
					var letter = line.charAt(j);
					var clipUV = this.clipUV[letter];
					if ( drawX + this.getCharacterWidth(letter) * scale  > this.width + EPSILON) {
						break;
					}
					if (clipUV !== undefined) {
						var clipWidth  = this.characterWidth*scale;
						var clipHeight = this.characterHeight*scale;
						roundX = drawX;
						roundY = drawY;
						if (angle === 0)
						{
							roundX = Math.round(roundX);
							roundY = Math.round(roundY);
						}
						dQuad.tlx  = roundX;
						dQuad.tly  = roundY;
						dQuad.trx  = roundX + clipWidth;
						dQuad.try_ = roundY ;
						dQuad.blx  = roundX;
						dQuad.bly  = roundY + clipHeight;
						dQuad.brx  = roundX + clipWidth;
						dQuad.bry  = roundY + clipHeight;
						if(angle !== 0)
						{
							rotateQuad(dQuad,cosa,sina);
						}
						dQuad.offset(offx,offy);
						glw.quadTex(
							dQuad.tlx, dQuad.tly,
							dQuad.trx, dQuad.try_,
							dQuad.brx, dQuad.bry,
							dQuad.blx, dQuad.bly,
							clipUV
						);
					}
					drawX  += this.getCharacterWidth(letter) * scale + charSpace;
				}
				drawY += charHeight;
				if ( drawY + charHeight + lineHeight > this.height) {
					break;
				}
			}
		}
	};
	function Cnds() {}
	Cnds.prototype.CompareText = function(text_to_compare, case_sensitive)
	{
		if (case_sensitive)
			return this.text == text_to_compare;
		else
			return cr.equals_nocase(this.text, text_to_compare);
	};
	pluginProto.cnds = new Cnds();
	function Acts() {}
	Acts.prototype.SetText = function(param)
	{
		if (cr.is_number(param) && param < 1e9)
			param = Math.round(param * 1e10) / 1e10;	// round to nearest ten billionth - hides floating point errors
		var text_to_set = param.toString();
		if (this.text !== text_to_set)
		{
			this.text = text_to_set;
			this.text_changed = true;
			this.runtime.redraw = true;
		}
	};
	Acts.prototype.AppendText = function(param)
	{
		if (cr.is_number(param))
			param = Math.round(param * 1e10) / 1e10;	// round to nearest ten billionth - hides floating point errors
		var text_to_append = param.toString();
		if (text_to_append)	// not empty
		{
			this.text += text_to_append;
			this.text_changed = true;
			this.runtime.redraw = true;
		}
	};
	Acts.prototype.SetScale = function(param)
	{
		if (param !== this.characterScale) {
			this.characterScale = param;
			this.text_changed = true;
			this.runtime.redraw = true;
		}
	};
	Acts.prototype.SetCharacterSpacing = function(param)
	{
		if (param !== this.CharacterSpacing) {
			this.characterSpacing = param;
			this.text_changed = true;
			this.runtime.redraw = true;
		}
	};
	Acts.prototype.SetLineHeight = function(param)
	{
		if (param !== this.lineHeight) {
			this.lineHeight = param;
			this.text_changed = true;
			this.runtime.redraw = true;
		}
	};
	instanceProto.SetCharWidth = function(character,width) {
		var w = parseInt(width,10);
		if (this.characterWidthList[character] !== w) {
			this.characterWidthList[character] = w;
			this.text_changed = true;
			this.runtime.redraw = true;
		}
	};
	Acts.prototype.SetCharacterWidth = function(characterSet,width)
	{
		if (characterSet !== "") {
			for(var c = 0; c < characterSet.length; c++) {
				this.SetCharWidth(characterSet.charAt(c),width);
			}
		}
	};
	Acts.prototype.SetEffect = function (effect)
	{
		this.compositeOp = cr.effectToCompositeOp(effect);
		cr.setGLBlend(this, effect, this.runtime.gl);
		this.runtime.redraw = true;
	};
	Acts.prototype.SetHAlign = function (a)
	{
		this.halign = a / 2.0;
		this.text_changed = true;
		this.runtime.redraw = true;
	};
	Acts.prototype.SetVAlign = function (a)
	{
		this.valign = a / 2.0;
		this.text_changed = true;
		this.runtime.redraw = true;
	};
	pluginProto.acts = new Acts();
	function Exps() {}
	Exps.prototype.CharacterWidth = function(ret,character)
	{
		ret.set_int(this.getCharacterWidth(character));
	};
	Exps.prototype.CharacterHeight = function(ret)
	{
		ret.set_int(this.characterHeight);
	};
	Exps.prototype.CharacterScale = function(ret)
	{
		ret.set_float(this.characterScale);
	};
	Exps.prototype.CharacterSpacing = function(ret)
	{
		ret.set_int(this.characterSpacing);
	};
	Exps.prototype.LineHeight = function(ret)
	{
		ret.set_int(this.lineHeight);
	};
	Exps.prototype.Text = function(ret)
	{
		ret.set_string(this.text);
	};
	Exps.prototype.TextWidth = function (ret)
	{
		this.rebuildText();
		ret.set_float(this.textWidth);
	};
	Exps.prototype.TextHeight = function (ret)
	{
		this.rebuildText();
		ret.set_float(this.textHeight);
	};
	pluginProto.exps = new Exps();
}());
;
;
cr.plugins_.Text = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var pluginProto = cr.plugins_.Text.prototype;
	pluginProto.onCreate = function ()
	{
		pluginProto.acts.SetWidth = function (w)
		{
			if (this.width !== w)
			{
				this.width = w;
				this.text_changed = true;	// also recalculate text wrapping
				this.set_bbox_changed();
			}
		};
	};
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	typeProto.onCreate = function()
	{
	};
	typeProto.onLostWebGLContext = function ()
	{
		if (this.is_family)
			return;
		var i, len, inst;
		for (i = 0, len = this.instances.length; i < len; i++)
		{
			inst = this.instances[i];
			inst.mycanvas = null;
			inst.myctx = null;
			inst.mytex = null;
		}
	};
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
		if (this.recycled)
			this.lines.length = 0;
		else
			this.lines = [];		// for word wrapping
		this.text_changed = true;
	};
	var instanceProto = pluginProto.Instance.prototype;
	var requestedWebFonts = {};		// already requested web fonts have an entry here
	instanceProto.onCreate = function()
	{
		this.text = this.properties[0];
		this.visible = (this.properties[1] === 0);		// 0=visible, 1=invisible
		this.font = this.properties[2];
		this.color = this.properties[3];
		this.halign = this.properties[4];				// 0=left, 1=center, 2=right
		this.valign = this.properties[5];				// 0=top, 1=center, 2=bottom
		this.wrapbyword = (this.properties[7] === 0);	// 0=word, 1=character
		this.lastwidth = this.width;
		this.lastwrapwidth = this.width;
		this.lastheight = this.height;
		this.line_height_offset = this.properties[8];
		this.facename = "";
		this.fontstyle = "";
		this.ptSize = 0;
		this.textWidth = 0;
		this.textHeight = 0;
		this.parseFont();
		this.mycanvas = null;
		this.myctx = null;
		this.mytex = null;
		this.need_text_redraw = false;
		this.last_render_tick = this.runtime.tickcount;
		if (this.recycled)
			this.rcTex.set(0, 0, 1, 1);
		else
			this.rcTex = new cr.rect(0, 0, 1, 1);
		if (this.runtime.glwrap)
			this.runtime.tickMe(this);
;
	};
	instanceProto.parseFont = function ()
	{
		var arr = this.font.split(" ");
		var i;
		for (i = 0; i < arr.length; i++)
		{
			if (arr[i].substr(arr[i].length - 2, 2) === "pt")
			{
				this.ptSize = parseInt(arr[i].substr(0, arr[i].length - 2));
				this.pxHeight = Math.ceil((this.ptSize / 72.0) * 96.0) + 4;	// assume 96dpi...
				if (i > 0)
					this.fontstyle = arr[i - 1];
				this.facename = arr[i + 1];
				for (i = i + 2; i < arr.length; i++)
					this.facename += " " + arr[i];
				break;
			}
		}
	};
	instanceProto.saveToJSON = function ()
	{
		return {
			"t": this.text,
			"f": this.font,
			"c": this.color,
			"ha": this.halign,
			"va": this.valign,
			"wr": this.wrapbyword,
			"lho": this.line_height_offset,
			"fn": this.facename,
			"fs": this.fontstyle,
			"ps": this.ptSize,
			"pxh": this.pxHeight,
			"tw": this.textWidth,
			"th": this.textHeight,
			"lrt": this.last_render_tick
		};
	};
	instanceProto.loadFromJSON = function (o)
	{
		this.text = o["t"];
		this.font = o["f"];
		this.color = o["c"];
		this.halign = o["ha"];
		this.valign = o["va"];
		this.wrapbyword = o["wr"];
		this.line_height_offset = o["lho"];
		this.facename = o["fn"];
		this.fontstyle = o["fs"];
		this.ptSize = o["ps"];
		this.pxHeight = o["pxh"];
		this.textWidth = o["tw"];
		this.textHeight = o["th"];
		this.last_render_tick = o["lrt"];
		this.text_changed = true;
		this.lastwidth = this.width;
		this.lastwrapwidth = this.width;
		this.lastheight = this.height;
	};
	instanceProto.tick = function ()
	{
		if (this.runtime.glwrap && this.mytex && (this.runtime.tickcount - this.last_render_tick >= 300))
		{
			var layer = this.layer;
            this.update_bbox();
            var bbox = this.bbox;
            if (bbox.right < layer.viewLeft || bbox.bottom < layer.viewTop || bbox.left > layer.viewRight || bbox.top > layer.viewBottom)
			{
				this.runtime.glwrap.deleteTexture(this.mytex);
				this.mytex = null;
				this.myctx = null;
				this.mycanvas = null;
			}
		}
	};
	instanceProto.onDestroy = function ()
	{
		this.myctx = null;
		this.mycanvas = null;
		if (this.runtime.glwrap && this.mytex)
			this.runtime.glwrap.deleteTexture(this.mytex);
		this.mytex = null;
	};
	instanceProto.updateFont = function ()
	{
		this.font = this.fontstyle + " " + this.ptSize.toString() + "pt " + this.facename;
		this.text_changed = true;
		this.runtime.redraw = true;
	};
	instanceProto.draw = function(ctx, glmode)
	{
		ctx.font = this.font;
		ctx.textBaseline = "top";
		ctx.fillStyle = this.color;
		ctx.globalAlpha = glmode ? 1 : this.opacity;
		var myscale = 1;
		if (glmode)
		{
			myscale = this.layer.getScale();
			ctx.save();
			ctx.scale(myscale, myscale);
		}
		if (this.text_changed || this.width !== this.lastwrapwidth)
		{
			this.type.plugin.WordWrap(this.text, this.lines, ctx, this.width, this.wrapbyword);
			this.text_changed = false;
			this.lastwrapwidth = this.width;
		}
		this.update_bbox();
		var penX = glmode ? 0 : this.bquad.tlx;
		var penY = glmode ? 0 : this.bquad.tly;
		if (this.runtime.pixel_rounding)
		{
			penX = (penX + 0.5) | 0;
			penY = (penY + 0.5) | 0;
		}
		if (this.angle !== 0 && !glmode)
		{
			ctx.save();
			ctx.translate(penX, penY);
			ctx.rotate(this.angle);
			penX = 0;
			penY = 0;
		}
		var endY = penY + this.height;
		var line_height = this.pxHeight;
		line_height += this.line_height_offset;
		var drawX;
		var i;
		if (this.valign === 1)		// center
			penY += Math.max(this.height / 2 - (this.lines.length * line_height) / 2, 0);
		else if (this.valign === 2)	// bottom
			penY += Math.max(this.height - (this.lines.length * line_height) - 2, 0);
		for (i = 0; i < this.lines.length; i++)
		{
			drawX = penX;
			if (this.halign === 1)		// center
				drawX = penX + (this.width - this.lines[i].width) / 2;
			else if (this.halign === 2)	// right
				drawX = penX + (this.width - this.lines[i].width);
			ctx.fillText(this.lines[i].text, drawX, penY);
			penY += line_height;
			if (penY >= endY - line_height)
				break;
		}
		if (this.angle !== 0 || glmode)
			ctx.restore();
		this.last_render_tick = this.runtime.tickcount;
	};
	instanceProto.drawGL = function(glw)
	{
		if (this.width < 1 || this.height < 1)
			return;
		var need_redraw = this.text_changed || this.need_text_redraw;
		this.need_text_redraw = false;
		var layer_scale = this.layer.getScale();
		var layer_angle = this.layer.getAngle();
		var rcTex = this.rcTex;
		var floatscaledwidth = layer_scale * this.width;
		var floatscaledheight = layer_scale * this.height;
		var scaledwidth = Math.ceil(floatscaledwidth);
		var scaledheight = Math.ceil(floatscaledheight);
		var halfw = this.runtime.draw_width / 2;
		var halfh = this.runtime.draw_height / 2;
		if (!this.myctx)
		{
			this.mycanvas = document.createElement("canvas");
			this.mycanvas.width = scaledwidth;
			this.mycanvas.height = scaledheight;
			this.lastwidth = scaledwidth;
			this.lastheight = scaledheight;
			need_redraw = true;
			this.myctx = this.mycanvas.getContext("2d");
		}
		if (scaledwidth !== this.lastwidth || scaledheight !== this.lastheight)
		{
			this.mycanvas.width = scaledwidth;
			this.mycanvas.height = scaledheight;
			if (this.mytex)
			{
				glw.deleteTexture(this.mytex);
				this.mytex = null;
			}
			need_redraw = true;
		}
		if (need_redraw)
		{
			this.myctx.clearRect(0, 0, scaledwidth, scaledheight);
			this.draw(this.myctx, true);
			if (!this.mytex)
				this.mytex = glw.createEmptyTexture(scaledwidth, scaledheight, this.runtime.linearSampling, this.runtime.isMobile);
			glw.videoToTexture(this.mycanvas, this.mytex, this.runtime.isMobile);
		}
		this.lastwidth = scaledwidth;
		this.lastheight = scaledheight;
		glw.setTexture(this.mytex);
		glw.setOpacity(this.opacity);
		glw.resetModelView();
		glw.translate(-halfw, -halfh);
		glw.updateModelView();
		var q = this.bquad;
		var old_dpr = this.runtime.devicePixelRatio;
		this.runtime.devicePixelRatio = 1;
		var tlx = this.layer.layerToCanvas(q.tlx, q.tly, true, true);
		var tly = this.layer.layerToCanvas(q.tlx, q.tly, false, true);
		var trx = this.layer.layerToCanvas(q.trx, q.try_, true, true);
		var try_ = this.layer.layerToCanvas(q.trx, q.try_, false, true);
		var brx = this.layer.layerToCanvas(q.brx, q.bry, true, true);
		var bry = this.layer.layerToCanvas(q.brx, q.bry, false, true);
		var blx = this.layer.layerToCanvas(q.blx, q.bly, true, true);
		var bly = this.layer.layerToCanvas(q.blx, q.bly, false, true);
		this.runtime.devicePixelRatio = old_dpr;
		if (this.runtime.pixel_rounding || (this.angle === 0 && layer_angle === 0))
		{
			var ox = ((tlx + 0.5) | 0) - tlx;
			var oy = ((tly + 0.5) | 0) - tly
			tlx += ox;
			tly += oy;
			trx += ox;
			try_ += oy;
			brx += ox;
			bry += oy;
			blx += ox;
			bly += oy;
		}
		if (this.angle === 0 && layer_angle === 0)
		{
			trx = tlx + scaledwidth;
			try_ = tly;
			brx = trx;
			bry = tly + scaledheight;
			blx = tlx;
			bly = bry;
			rcTex.right = 1;
			rcTex.bottom = 1;
		}
		else
		{
			rcTex.right = floatscaledwidth / scaledwidth;
			rcTex.bottom = floatscaledheight / scaledheight;
		}
		glw.quadTex(tlx, tly, trx, try_, brx, bry, blx, bly, rcTex);
		glw.resetModelView();
		glw.scale(layer_scale, layer_scale);
		glw.rotateZ(-this.layer.getAngle());
		glw.translate((this.layer.viewLeft + this.layer.viewRight) / -2, (this.layer.viewTop + this.layer.viewBottom) / -2);
		glw.updateModelView();
		this.last_render_tick = this.runtime.tickcount;
	};
	var wordsCache = [];
	pluginProto.TokeniseWords = function (text)
	{
		wordsCache.length = 0;
		var cur_word = "";
		var ch;
		var i = 0;
		while (i < text.length)
		{
			ch = text.charAt(i);
			if (ch === "\n")
			{
				if (cur_word.length)
				{
					wordsCache.push(cur_word);
					cur_word = "";
				}
				wordsCache.push("\n");
				++i;
			}
			else if (ch === " " || ch === "\t" || ch === "-")
			{
				do {
					cur_word += text.charAt(i);
					i++;
				}
				while (i < text.length && (text.charAt(i) === " " || text.charAt(i) === "\t"));
				wordsCache.push(cur_word);
				cur_word = "";
			}
			else if (i < text.length)
			{
				cur_word += ch;
				i++;
			}
		}
		if (cur_word.length)
			wordsCache.push(cur_word);
	};
	var linesCache = [];
	function allocLine()
	{
		if (linesCache.length)
			return linesCache.pop();
		else
			return {};
	};
	function freeLine(l)
	{
		linesCache.push(l);
	};
	function freeAllLines(arr)
	{
		var i, len;
		for (i = 0, len = arr.length; i < len; i++)
		{
			freeLine(arr[i]);
		}
		arr.length = 0;
	};
	pluginProto.WordWrap = function (text, lines, ctx, width, wrapbyword)
	{
		if (!text || !text.length)
		{
			freeAllLines(lines);
			return;
		}
		if (width <= 2.0)
		{
			freeAllLines(lines);
			return;
		}
		if (text.length <= 100 && text.indexOf("\n") === -1)
		{
			var all_width = ctx.measureText(text).width;
			if (all_width <= width)
			{
				freeAllLines(lines);
				lines.push(allocLine());
				lines[0].text = text;
				lines[0].width = all_width;
				return;
			}
		}
		this.WrapText(text, lines, ctx, width, wrapbyword);
	};
	pluginProto.WrapText = function (text, lines, ctx, width, wrapbyword)
	{
		var wordArray;
		if (wrapbyword)
		{
			this.TokeniseWords(text);	// writes to wordsCache
			wordArray = wordsCache;
		}
		else
			wordArray = text;
		var cur_line = "";
		var prev_line;
		var line_width;
		var i;
		var lineIndex = 0;
		var line;
		for (i = 0; i < wordArray.length; i++)
		{
			if (wordArray[i] === "\n")
			{
				if (lineIndex >= lines.length)
					lines.push(allocLine());
				line = lines[lineIndex];
				line.text = cur_line;
				line.width = ctx.measureText(cur_line).width;
				lineIndex++;
				cur_line = "";
				continue;
			}
			prev_line = cur_line;
			cur_line += wordArray[i];
			line_width = ctx.measureText(cur_line).width;
			if (line_width >= width)
			{
				if (lineIndex >= lines.length)
					lines.push(allocLine());
				line = lines[lineIndex];
				line.text = prev_line;
				line.width = ctx.measureText(prev_line).width;
				lineIndex++;
				cur_line = wordArray[i];
				if (!wrapbyword && cur_line === " ")
					cur_line = "";
			}
		}
		if (cur_line.length)
		{
			if (lineIndex >= lines.length)
				lines.push(allocLine());
			line = lines[lineIndex];
			line.text = cur_line;
			line.width = ctx.measureText(cur_line).width;
			lineIndex++;
		}
		for (i = lineIndex; i < lines.length; i++)
			freeLine(lines[i]);
		lines.length = lineIndex;
	};
	function Cnds() {};
	Cnds.prototype.CompareText = function(text_to_compare, case_sensitive)
	{
		if (case_sensitive)
			return this.text == text_to_compare;
		else
			return cr.equals_nocase(this.text, text_to_compare);
	};
	pluginProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.SetText = function(param)
	{
		if (cr.is_number(param) && param < 1e9)
			param = Math.round(param * 1e10) / 1e10;	// round to nearest ten billionth - hides floating point errors
		var text_to_set = param.toString();
		if (this.text !== text_to_set)
		{
			this.text = text_to_set;
			this.text_changed = true;
			this.runtime.redraw = true;
		}
	};
	Acts.prototype.AppendText = function(param)
	{
		if (cr.is_number(param))
			param = Math.round(param * 1e10) / 1e10;	// round to nearest ten billionth - hides floating point errors
		var text_to_append = param.toString();
		if (text_to_append)	// not empty
		{
			this.text += text_to_append;
			this.text_changed = true;
			this.runtime.redraw = true;
		}
	};
	Acts.prototype.SetFontFace = function (face_, style_)
	{
		var newstyle = "";
		switch (style_) {
		case 1: newstyle = "bold"; break;
		case 2: newstyle = "italic"; break;
		case 3: newstyle = "bold italic"; break;
		}
		if (face_ === this.facename && newstyle === this.fontstyle)
			return;		// no change
		this.facename = face_;
		this.fontstyle = newstyle;
		this.updateFont();
	};
	Acts.prototype.SetFontSize = function (size_)
	{
		if (this.ptSize === size_)
			return;
		this.ptSize = size_;
		this.pxHeight = Math.ceil((this.ptSize / 72.0) * 96.0) + 4;	// assume 96dpi...
		this.updateFont();
	};
	Acts.prototype.SetFontColor = function (rgb)
	{
		var newcolor = "rgb(" + cr.GetRValue(rgb).toString() + "," + cr.GetGValue(rgb).toString() + "," + cr.GetBValue(rgb).toString() + ")";
		if (newcolor === this.color)
			return;
		this.color = newcolor;
		this.need_text_redraw = true;
		this.runtime.redraw = true;
	};
	Acts.prototype.SetWebFont = function (familyname_, cssurl_)
	{
		if (this.runtime.isDomFree)
		{
			cr.logexport("[Construct 2] Text plugin: 'Set web font' not supported on this platform - the action has been ignored");
			return;		// DC todo
		}
		var self = this;
		var refreshFunc = (function () {
							self.runtime.redraw = true;
							self.text_changed = true;
						});
		if (requestedWebFonts.hasOwnProperty(cssurl_))
		{
			var newfacename = "'" + familyname_ + "'";
			if (this.facename === newfacename)
				return;	// no change
			this.facename = newfacename;
			this.updateFont();
			for (var i = 1; i < 10; i++)
			{
				setTimeout(refreshFunc, i * 100);
				setTimeout(refreshFunc, i * 1000);
			}
			return;
		}
		var wf = document.createElement("link");
		wf.href = cssurl_;
		wf.rel = "stylesheet";
		wf.type = "text/css";
		wf.onload = refreshFunc;
		document.getElementsByTagName('head')[0].appendChild(wf);
		requestedWebFonts[cssurl_] = true;
		this.facename = "'" + familyname_ + "'";
		this.updateFont();
		for (var i = 1; i < 10; i++)
		{
			setTimeout(refreshFunc, i * 100);
			setTimeout(refreshFunc, i * 1000);
		}
;
	};
	Acts.prototype.SetEffect = function (effect)
	{
		this.compositeOp = cr.effectToCompositeOp(effect);
		cr.setGLBlend(this, effect, this.runtime.gl);
		this.runtime.redraw = true;
	};
	pluginProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.Text = function(ret)
	{
		ret.set_string(this.text);
	};
	Exps.prototype.FaceName = function (ret)
	{
		ret.set_string(this.facename);
	};
	Exps.prototype.FaceSize = function (ret)
	{
		ret.set_int(this.ptSize);
	};
	Exps.prototype.TextWidth = function (ret)
	{
		var w = 0;
		var i, len, x;
		for (i = 0, len = this.lines.length; i < len; i++)
		{
			x = this.lines[i].width;
			if (w < x)
				w = x;
		}
		ret.set_int(w);
	};
	Exps.prototype.TextHeight = function (ret)
	{
		ret.set_int(this.lines.length * (this.pxHeight + this.line_height_offset) - this.line_height_offset);
	};
	pluginProto.exps = new Exps();
}());
;
;
cr.plugins_.TiledBg = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var pluginProto = cr.plugins_.TiledBg.prototype;
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	typeProto.onCreate = function()
	{
		if (this.is_family)
			return;
		this.texture_img = new Image();
		this.texture_img["idtkLoadDisposed"] = true;
		this.texture_img.src = this.texture_file;
		this.texture_img.cr_filesize = this.texture_filesize;
		this.runtime.waitForImageLoad(this.texture_img);
		this.pattern = null;
		this.webGL_texture = null;
	};
	typeProto.onLostWebGLContext = function ()
	{
		if (this.is_family)
			return;
		this.webGL_texture = null;
	};
	typeProto.onRestoreWebGLContext = function ()
	{
		if (this.is_family || !this.instances.length)
			return;
		if (!this.webGL_texture)
		{
			this.webGL_texture = this.runtime.glwrap.loadTexture(this.texture_img, true, this.runtime.linearSampling, this.texture_pixelformat);
		}
		var i, len;
		for (i = 0, len = this.instances.length; i < len; i++)
			this.instances[i].webGL_texture = this.webGL_texture;
	};
	typeProto.loadTextures = function ()
	{
		if (this.is_family || this.webGL_texture || !this.runtime.glwrap)
			return;
		this.webGL_texture = this.runtime.glwrap.loadTexture(this.texture_img, true, this.runtime.linearSampling, this.texture_pixelformat);
	};
	typeProto.unloadTextures = function ()
	{
		if (this.is_family || this.instances.length || !this.webGL_texture)
			return;
		this.runtime.glwrap.deleteTexture(this.webGL_texture);
		this.webGL_texture = null;
	};
	typeProto.preloadCanvas2D = function (ctx)
	{
		ctx.drawImage(this.texture_img, 0, 0);
	};
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
	};
	var instanceProto = pluginProto.Instance.prototype;
	instanceProto.onCreate = function()
	{
		this.visible = (this.properties[0] === 0);							// 0=visible, 1=invisible
		this.rcTex = new cr.rect(0, 0, 0, 0);
		this.has_own_texture = false;										// true if a texture loaded in from URL
		this.texture_img = this.type.texture_img;
		if (this.runtime.glwrap)
		{
			this.type.loadTextures();
			this.webGL_texture = this.type.webGL_texture;
		}
		else
		{
			if (!this.type.pattern)
				this.type.pattern = this.runtime.ctx.createPattern(this.type.texture_img, "repeat");
			this.pattern = this.type.pattern;
		}
	};
	instanceProto.afterLoad = function ()
	{
		this.has_own_texture = false;
		this.texture_img = this.type.texture_img;
	};
	instanceProto.onDestroy = function ()
	{
		if (this.runtime.glwrap && this.has_own_texture && this.webGL_texture)
		{
			this.runtime.glwrap.deleteTexture(this.webGL_texture);
			this.webGL_texture = null;
		}
	};
	instanceProto.draw = function(ctx)
	{
		ctx.globalAlpha = this.opacity;
		ctx.save();
		ctx.fillStyle = this.pattern;
		var myx = this.x;
		var myy = this.y;
		if (this.runtime.pixel_rounding)
		{
			myx = (myx + 0.5) | 0;
			myy = (myy + 0.5) | 0;
		}
		var drawX = -(this.hotspotX * this.width);
		var drawY = -(this.hotspotY * this.height);
		var offX = drawX % this.texture_img.width;
		var offY = drawY % this.texture_img.height;
		if (offX < 0)
			offX += this.texture_img.width;
		if (offY < 0)
			offY += this.texture_img.height;
		ctx.translate(myx, myy);
		ctx.rotate(this.angle);
		ctx.translate(offX, offY);
		ctx.fillRect(drawX - offX,
					 drawY - offY,
					 this.width,
					 this.height);
		ctx.restore();
	};
	instanceProto.drawGL = function(glw)
	{
		glw.setTexture(this.webGL_texture);
		glw.setOpacity(this.opacity);
		var rcTex = this.rcTex;
		rcTex.right = this.width / this.texture_img.width;
		rcTex.bottom = this.height / this.texture_img.height;
		var q = this.bquad;
		if (this.runtime.pixel_rounding)
		{
			var ox = ((this.x + 0.5) | 0) - this.x;
			var oy = ((this.y + 0.5) | 0) - this.y;
			glw.quadTex(q.tlx + ox, q.tly + oy, q.trx + ox, q.try_ + oy, q.brx + ox, q.bry + oy, q.blx + ox, q.bly + oy, rcTex);
		}
		else
			glw.quadTex(q.tlx, q.tly, q.trx, q.try_, q.brx, q.bry, q.blx, q.bly, rcTex);
	};
	function Cnds() {};
	Cnds.prototype.OnURLLoaded = function ()
	{
		return true;
	};
	pluginProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.SetEffect = function (effect)
	{
		this.compositeOp = cr.effectToCompositeOp(effect);
		cr.setGLBlend(this, effect, this.runtime.gl);
		this.runtime.redraw = true;
	};
	Acts.prototype.LoadURL = function (url_)
	{
		var img = new Image();
		var self = this;
		img.onload = function ()
		{
			self.texture_img = img;
			if (self.runtime.glwrap)
			{
				if (self.has_own_texture && self.webGL_texture)
					self.runtime.glwrap.deleteTexture(self.webGL_texture);
				self.webGL_texture = self.runtime.glwrap.loadTexture(img, true, self.runtime.linearSampling);
			}
			else
			{
				self.pattern = self.runtime.ctx.createPattern(img, "repeat");
			}
			self.has_own_texture = true;
			self.runtime.redraw = true;
			self.runtime.trigger(cr.plugins_.TiledBg.prototype.cnds.OnURLLoaded, self);
		};
		if (url_.substr(0, 5) !== "data:")
			img.crossOrigin = 'anonymous';
		img.src = url_;
	};
	pluginProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.ImageWidth = function (ret)
	{
		ret.set_float(this.texture_img.width);
	};
	Exps.prototype.ImageHeight = function (ret)
	{
		ret.set_float(this.texture_img.height);
	};
	pluginProto.exps = new Exps();
}());
;
;
cr.plugins_.Tilemap = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var pluginProto = cr.plugins_.Tilemap.prototype;
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	typeProto.onCreate = function()
	{
		var i, len, p;
		if (this.is_family)
			return;
		this.texture_img = new Image();
		this.texture_img["idtkLoadDisposed"] = true;
		this.texture_img.src = this.texture_file;
		this.texture_img.cr_filesize = this.texture_filesize;
		this.runtime.waitForImageLoad(this.texture_img);
		this.cut_tiles = [];
		this.cut_tiles_valid = false;
		this.tile_polys = [];
		this.tile_polys_cached = false;		// first instance will cache polys with the tile width/height
		if (this.tile_poly_data && this.tile_poly_data.length)
		{
			for (i = 0, len = this.tile_poly_data.length; i < len; ++i)
			{
				p = this.tile_poly_data[i];
				if (p)
				{
					this.tile_polys.push({
						poly: p,
						flipmap: [[[null, null], [null, null]], [[null, null], [null, null]]]
					});
				}
				else
					this.tile_polys.push(null);
			}
		}
	};
	typeProto.cacheTilePoly = function (tileid, tilewidth, tileheight, fliph, flipv, flipd)
	{
		if (tileid < 0 || tileid >= this.tile_polys.length)
			return;
		if (!this.tile_polys[tileid])
			return;		// no poly for this tile
		var poly = this.tile_polys[tileid].poly;
		var flipmap = this.tile_polys[tileid].flipmap;
		var cached_poly = new cr.CollisionPoly(poly);
		cached_poly.cache_poly(tilewidth, tileheight, 0);
		if (flipd)
			cached_poly.diag();
		if (fliph)
			cached_poly.mirror(tilewidth / 2);
		if (flipv)
			cached_poly.flip(tileheight / 2);
		flipmap[fliph?1:0][flipv?1:0][flipd?1:0] = cached_poly;
	};
	typeProto.getTilePoly = function (id)
	{
		if (id === -1)
			return null;
		var tileid = (id & TILE_ID_MASK);
		if (tileid < 0 || tileid >= this.tile_polys.length)
			return null;		// out of range
		if (!this.tile_polys[tileid])
			return null;		// no poly for this tile
		var fliph = (id & TILE_FLIPPED_HORIZONTAL) ? 1 : 0;
		var flipv = (id & TILE_FLIPPED_VERTICAL) ? 1 : 0;
		var flipd = (id & TILE_FLIPPED_DIAGONAL) ? 1 : 0;
		return this.tile_polys[tileid].flipmap[fliph][flipv][flipd];
	};
	typeProto.freeCutTiles = function ()
	{
		var i, len;
		var glwrap = this.runtime.glwrap;
		if (glwrap)
		{
			for (i = 0, len = this.cut_tiles.length; i < len; ++i)
				glwrap.deleteTexture(this.cut_tiles[i]);
		}
		this.cut_tiles.length = 0;
		this.cut_tiles_valid = false;
	}
	typeProto.maybeCutTiles = function (tw, th, offx, offy, sepx, sepy)
	{
		if (this.cut_tiles_valid)
			return;		// no changed
		if (tw <= 0 || th <= 0)
			return;
		this.freeCutTiles();
		var img_width = this.texture_img.width;
		var img_height = this.texture_img.height;
		var x, y;
		for (y = offy; y + th <= img_height; y += (th + sepy))
		{
			for (x = offx; x + tw <= img_width; x += (tw + sepx))
			{
				this.cut_tiles.push(this.CutTileImage(x, y, tw, th));
			}
		}
		this.cut_tiles_valid = true;
	};
	typeProto.CutTileImage = function(x, y, w, h)
	{
		if (this.runtime.glwrap)
		{
			return this.DoCutTileImage(x, y, w, h, false, false, false);
		}
		else
		{
			var flipmap = [[[null, null], [null, null]], [[null, null], [null, null]]];
			flipmap[0][0][0] = this.DoCutTileImage(x, y, w, h, false, false, false);
			return {
				flipmap: flipmap,
				x: x,
				y: y,
				w: w,
				h: h
			};
		}
	};
	typeProto.GetFlippedTileImage = function (tileid, fliph, flipv, flipd)
	{
		if (tileid < 0 || tileid >= this.cut_tiles.length)
			return null;
		var tile = this.cut_tiles[tileid];
		var flipmap = tile.flipmap;
		var hi = (fliph ? 1 : 0);
		var vi = (flipv ? 1 : 0);
		var di = (flipd ? 1 : 0);
		var ret = flipmap[hi][vi][di];
		if (ret)
		{
			return ret;
		}
		else
		{
			ret = this.DoCutTileImage(tile.x, tile.y, tile.w, tile.h, hi!==0, vi!==0, di!==0);
			flipmap[hi][vi][di] = ret;
			return ret;
		}
	};
	typeProto.DoCutTileImage = function(x, y, w, h, fliph, flipv, flipd)
	{
		var dw = w;
		var dh = h;
		if (this.runtime.glwrap)
		{
			if (!cr.isPOT(dw))
				dw = cr.nextHighestPowerOfTwo(dw);
			if (!cr.isPOT(dh))
				dh = cr.nextHighestPowerOfTwo(dh);
		}
		var tmpcanvas = document.createElement("canvas");
		tmpcanvas.width = dw;
		tmpcanvas.height = dh;
		var tmpctx = tmpcanvas.getContext("2d");
		if (this.runtime.ctx)
		{
			if (fliph)
			{
				if (flipv)
				{
					if (flipd)
					{
						tmpctx.rotate(Math.PI / 2);
						tmpctx.scale(-1, 1);
						tmpctx.translate(-dw, -dh);
					}
					else
					{
						tmpctx.scale(-1, -1);
						tmpctx.translate(-dw, -dh);
					}
				}
				else
				{
					if (flipd)
					{
						tmpctx.rotate(Math.PI / 2);
						tmpctx.translate(0, -dh);
					}
					else
					{
						tmpctx.scale(-1, 1);
						tmpctx.translate(-dw, 0);
					}
				}
			}
			else
			{
				if (flipv)
				{
					if (flipd)
					{
						tmpctx.rotate(-Math.PI / 2);
						tmpctx.translate(-dw, 0);
					}
					else
					{
						tmpctx.scale(1, -1);
						tmpctx.translate(0, -dh);
					}
				}
				else
				{
					if (flipd)
					{
						tmpctx.scale(-1, 1);
						tmpctx.rotate(Math.PI / 2);
					}
				}
			}
			tmpctx.drawImage(this.texture_img, x, y, w, h, 0, 0, dw, dh);
			return this.runtime.ctx.createPattern(tmpcanvas, "repeat");
		}
		else
		{
;
			tmpctx.drawImage(this.texture_img, x, y, w, h, 0, 0, dw, dh);
			var tex = this.runtime.glwrap.createEmptyTexture(dw, dh, this.runtime.linearSampling, false, true);
			this.runtime.glwrap.videoToTexture(tmpcanvas, tex);
			return tex;
		}
	};
	typeProto.onLostWebGLContext = function ()
	{
		if (this.is_family)
			return;
		this.freeCutTiles();
	};
	typeProto.onRestoreWebGLContext = function ()
	{
	};
	typeProto.loadTextures = function ()
	{
	};
	typeProto.unloadTextures = function ()
	{
		if (this.is_family || this.instances.length)
			return;
		this.freeCutTiles();
	};
	typeProto.preloadCanvas2D = function (ctx)
	{
	};
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
	};
	var instanceProto = pluginProto.Instance.prototype;
	var TILE_FLIPPED_HORIZONTAL = -0x80000000		// note: pretend is a signed int, so negate
	var TILE_FLIPPED_VERTICAL = 0x40000000
	var TILE_FLIPPED_DIAGONAL = 0x20000000
	var TILE_FLAGS_MASK = 0xE0000000
	var TILE_ID_MASK = 0x1FFFFFFF
	function TileQuad()
	{
		this.id = -1;
		this.tileid = -1;
		this.horiz_flip = false;
		this.vert_flip = false;
		this.diag_flip = false;
		this.any_flip = false;
		this.rc = new cr.rect(0, 0, 0, 0);
	};
	var tilequad_cache = [];
	function allocTileQuad()
	{
		if (tilequad_cache.length)
			return tilequad_cache.pop();
		else
			return new TileQuad();
	};
	function freeTileQuad(tq)
	{
		if (tilequad_cache.length < 10000)
			tilequad_cache.push(tq);
	};
	function TileCollisionRect()
	{
		this.id = -1;
		this.rc = new cr.rect(0, 0, 0, 0);
		this.poly = null;
	}
	var collrect_cache = [];
	function allocCollRect()
	{
		if (collrect_cache.length)
			return collrect_cache.pop();
		else
			return new TileCollisionRect();
	};
	function freeCollRect(r)
	{
		if (collrect_cache.length < 10000)
			collrect_cache.push(r);
	};
	var tile_cell_cache = [];
	function allocTileCell(inst_, x_, y_)
	{
		var ret;
		if (tile_cell_cache.length)
		{
			ret = tile_cell_cache.pop();
			ret.inst = inst_;
			ret.x = x_;
			ret.y = y_;
			ret.left = ret.x * ret.inst.cellwidth * ret.inst.tilewidth;
			ret.top = ret.y * ret.inst.cellheight * ret.inst.tileheight;
			ret.clear();
			ret.quadmap_valid = false;
			return ret;
		}
		else
			return new TileCell(inst_, x_, y_);
	};
	function freeTileCell(tc)
	{
		var i, len;
		for (i = 0, len = tc.quads.length; i < len; ++i)
			freeTileQuad(tc.quads[i]);
		tc.quads.length = 0;
		for (i = 0, len = tc.collision_rects.length; i < len; ++i)
			freeCollRect(tc.collision_rects[i]);
		tc.collision_rects.length = 0;
		if (tile_cell_cache.length < 1000)
			tile_cell_cache.push(tc);
	};
	function TileCell(inst_, x_, y_)
	{
		this.inst = inst_;
		this.x = x_;
		this.y = y_;
		this.left = this.x * this.inst.cellwidth * this.inst.tilewidth;
		this.top = this.y * this.inst.cellheight * this.inst.tileheight;
		this.tiles = [];
		this.quads = [];
		this.collision_rects = [];
		this.quadmap_valid = false;
		var i, len, j, lenj, arr;
		for (i = 0, len = this.inst.cellheight; i < len; ++i)
		{
			arr = [];
			for (j = 0, lenj = this.inst.cellwidth; j < lenj; ++j)
				arr.push(-1);
			this.tiles.push(arr);
		}
	};
	TileCell.prototype.clear = function ()
	{
		var i, len, j, lenj, arr;
		this.tiles.length = this.inst.cellheight;
		for (i = 0, len = this.tiles.length; i < len; ++i)
		{
			arr = this.tiles[i];
			if (!arr)
			{
				arr = [];
				this.tiles[i] = arr;
			}
			arr.length = this.inst.cellwidth;
			for (j = 0, lenj = arr.length; j < lenj; ++j)
				arr[j] = -1;
		}
	};
	TileCell.prototype.maybeBuildQuadMap = function ()
	{
		if (this.quadmap_valid)
			return;		// not changed
		var tilewidth = this.inst.tilewidth;
		var tileheight = this.inst.tileheight;
		if (tilewidth <= 0 || tileheight <= 0)
			return;
		var i, j, len, y, leny, x, lenx, arr, t, p, q;
		for (i = 0, len = this.quads.length; i < len; ++i)
			freeTileQuad(this.quads[i]);
		for (i = 0, len = this.collision_rects.length; i < len; ++i)
			freeCollRect(this.collision_rects[i]);
		this.quads.length = 0;
		this.collision_rects.length = 0;
		var extentwidth = Math.floor(this.inst.width / tilewidth);
		var extentheight = Math.floor(this.inst.height / tileheight);
		extentwidth -= this.left / tilewidth;
		extentheight -= this.top / tileheight;
		if (extentwidth > this.inst.cellwidth)
			extentwidth = this.inst.cellwidth;
		if (extentheight > this.inst.cellheight)
			extentheight = this.inst.cellheight;
		var cur_quad = null;
		for (y = 0, leny = extentheight; y < leny; ++y)
		{
			arr = this.tiles[y];
			for (x = 0, lenx = extentwidth; x < lenx; ++x)
			{
				t = arr[x];
				if (t === -1)
				{
					if (cur_quad)
					{
						this.quads.push(cur_quad);
						cur_quad = null;
					}
					continue;
				}
				if (!cur_quad || t !== cur_quad.id)
				{
					if (cur_quad)
						this.quads.push(cur_quad);
					cur_quad = allocTileQuad();
					cur_quad.id = t;
					cur_quad.tileid = (t & TILE_ID_MASK);
					cur_quad.horiz_flip = (t & TILE_FLIPPED_HORIZONTAL) !== 0;
					cur_quad.vert_flip = (t & TILE_FLIPPED_VERTICAL) !== 0;
					cur_quad.diag_flip = (t & TILE_FLIPPED_DIAGONAL) !== 0;
					cur_quad.any_flip = (cur_quad.horiz_flip || cur_quad.vert_flip || cur_quad.diag_flip);
					cur_quad.rc.left = x * tilewidth + this.left;
					cur_quad.rc.top = y * tileheight + this.top;
					cur_quad.rc.right = cur_quad.rc.left + tilewidth;
					cur_quad.rc.bottom = cur_quad.rc.top + tileheight;
				}
				else
				{
					cur_quad.rc.right += tilewidth;
				}
			}
			if (cur_quad)
			{
				this.quads.push(cur_quad);
				cur_quad = null;
			}
		}
		var cur_rect = null;
		var tileid, tilepoly;
		var cur_has_poly = false;
		var rc;
		for (y = 0, leny = extentheight; y < leny; ++y)
		{
			arr = this.tiles[y];
			for (x = 0, lenx = extentwidth; x < lenx; ++x)
			{
				t = arr[x];
				if (t === -1)
				{
					if (cur_rect)
					{
						this.collision_rects.push(cur_rect);
						cur_rect = null;
						cur_has_poly = false;
					}
					continue;
				}
				tileid = (t & TILE_ID_MASK);
				tilepoly = this.inst.type.getTilePoly(t);
				if (!cur_rect || tilepoly || cur_has_poly)
				{
					if (cur_rect)
					{
						this.collision_rects.push(cur_rect);
						cur_rect = null;
					}
;
					cur_rect = allocCollRect();
					cur_rect.id = t;
					cur_rect.poly = tilepoly ? tilepoly : null;
					rc = cur_rect.rc;
					rc.left = x * tilewidth + this.left;
					rc.top = y * tileheight + this.top;
					rc.right = rc.left + tilewidth;
					rc.bottom = rc.top + tileheight;
					cur_has_poly = !!tilepoly;
				}
				else
				{
					cur_rect.rc.right += tilewidth;
				}
			}
			if (cur_rect)
			{
				this.collision_rects.push(cur_rect);
				cur_rect = null;
				cur_has_poly = false;
			}
		}
		len = this.quads.length;
		for (i = 0; i < len; ++i)
		{
			q = this.quads[i];
			for (j = i + 1; j < len; ++j)
			{
				p = this.quads[j];
				if (p.rc.top < q.rc.bottom)
					continue;
				if (p.rc.top > q.rc.bottom)
					break;
				if (p.rc.right > q.rc.right || p.rc.left > q.rc.left)
					break;
				if (p.id === q.id && p.rc.left === q.rc.left && p.rc.right === q.rc.right)
				{
					freeTileQuad(this.quads[j]);
					this.quads.splice(j, 1);
					--len;
					q.rc.bottom += tileheight;
					--j;		// look at same j index again
				}
			}
		}
		len = this.collision_rects.length;
		var prc, qrc;
		for (i = 0; i < len; ++i)
		{
			q = this.collision_rects[i];
			if (q.poly)
				continue;
			qrc = q.rc;
			for (j = i + 1; j < len; ++j)
			{
				p = this.collision_rects[j];
				prc = p.rc;
				if (prc.top < qrc.bottom)
					continue;
				if (prc.top > qrc.bottom)
					break;
				if (prc.right > qrc.right || prc.left > qrc.left)
					break;
				if (p.poly)
					continue;
				if (prc.left === qrc.left && prc.right === qrc.right)
				{
					freeCollRect(this.collision_rects[j]);
					this.collision_rects.splice(j, 1);
					--len;
					qrc.bottom += tileheight;
					--j;		// look at same j index again
				}
			}
		}
		this.quadmap_valid = true;
	};
	TileCell.prototype.setTileAt = function (x_, y_, t_)
	{
		if (this.tiles[y_][x_] !== t_)
		{
			this.tiles[y_][x_] = t_;
			this.quadmap_valid = false;
			this.inst.any_quadmap_changed = true;
			this.inst.physics_changed = true;
			this.inst.runtime.redraw = true;
		}
	};
	instanceProto.onCreate = function()
	{
;
		var i, len, p;
		this.visible = (this.properties[0] === 0);
		this.tilewidth = this.properties[1];
		this.tileheight = this.properties[2];
		this.tilexoffset = this.properties[3];
		this.tileyoffset = this.properties[4];
		this.tilexspacing = this.properties[5];
		this.tileyspacing = this.properties[6];
		this.mapwidth = this.tilemap_width;
		this.mapheight = this.tilemap_height;
		this.lastwidth = this.width;
		this.lastheight = this.height;
		var tw = this.tilewidth;
		var th = this.tileheight;
		if (tw === 0)
			tw = 1;
		if (th === 0)
			th = 1;
		this.cellwidth = Math.ceil(this.runtime.original_width / tw);
		this.cellheight = Math.ceil(this.runtime.original_height / th);
		if (!this.type.tile_polys_cached)
		{
			this.type.tile_polys_cached = true;
			for (i = 0, len = this.type.tile_polys.length; i < len; ++i)
			{
				p = this.type.tile_polys[i];
				if (!p)
					continue;
				this.type.cacheTilePoly(i, tw, th, false, false, false);
				this.type.cacheTilePoly(i, tw, th, false, false, true);
				this.type.cacheTilePoly(i, tw, th, false, true, false);
				this.type.cacheTilePoly(i, tw, th, false, true, true);
				this.type.cacheTilePoly(i, tw, th, true, false, false);
				this.type.cacheTilePoly(i, tw, th, true, false, true);
				this.type.cacheTilePoly(i, tw, th, true, true, false);
				this.type.cacheTilePoly(i, tw, th, true, true, true);
			}
		}
		if (!this.recycled)
			this.tilecells = [];
		this.maybeResizeTilemap(true);
		this.setTilesFromRLECSV(this.tilemap_data);
		this.type.maybeCutTiles(this.tilewidth, this.tileheight, this.tilexoffset, this.tileyoffset, this.tilexspacing, this.tileyspacing);
		this.physics_changed = false;		// to indicate to physics behavior to recreate body
		this.any_quadmap_changed = true;
		this.maybeBuildAllQuadMap();
	};
	instanceProto.maybeBuildAllQuadMap = function ()
	{
		if (!this.any_quadmap_changed)
			return;		// no change
		var i, len, j, lenj, arr;
		for (i = 0, len = this.tilecells.length; i < len; ++i)
		{
			arr = this.tilecells[i];
			for (j = 0, lenj = arr.length; j < lenj; ++j)
			{
				arr[j].maybeBuildQuadMap();
			}
		}
		this.any_quadmap_changed = false;
	};
	instanceProto.setAllQuadMapChanged = function ()
	{
		var i, len, j, lenj, arr;
		for (i = 0, len = this.tilecells.length; i < len; ++i)
		{
			arr = this.tilecells[i];
			for (j = 0, lenj = arr.length; j < lenj; ++j)
			{
				arr[j].quadmap_valid = false;
			}
		}
		this.any_quadmap_changed = true;
	};
	function RunLengthDecode(str)
	{
		var ret = [];
		var parts = str.split(",");
		var i, len, p, x, n, t, part;
		for (i = 0, len = parts.length; i < len; ++i)
		{
			p = parts[i];
			x = p.indexOf("x");
			if (x > -1)
			{
				n = parseInt(p.substring(0, x), 10);
				part = p.substring(x + 1);
				t = parseInt(part, 10);
				if (part.indexOf("h") > -1)
					t = t | TILE_FLIPPED_HORIZONTAL;
				if (part.indexOf("v") > -1)
					t = t | TILE_FLIPPED_VERTICAL;
				if (part.indexOf("d") > -1)
					t = t | TILE_FLIPPED_DIAGONAL;
				for ( ; n > 0; --n)
					ret.push(t);
			}
			else
			{
				t = parseInt(p, 10);
				if (p.indexOf("h") > -1)
					t = t | TILE_FLIPPED_HORIZONTAL;
				if (p.indexOf("v") > -1)
					t = t | TILE_FLIPPED_VERTICAL;
				if (p.indexOf("d") > -1)
					t = t | TILE_FLIPPED_DIAGONAL;
				ret.push(t);
			}
		}
		return ret;
	};
	instanceProto.maybeResizeTilemap = function (force)
	{
		var curwidth = cr.floor(this.width / this.tilewidth);
		var curheight = cr.floor(this.height / this.tileheight);
		if (curwidth <= this.mapwidth && curheight <= this.mapheight && !force)
			return;
		var vcells, hcells;
		if (force)
		{
			vcells = Math.ceil(this.mapheight / this.cellheight);
			hcells = Math.ceil(this.mapwidth / this.cellwidth);
		}
		else
		{
			vcells = this.tilecells.length;
			hcells = Math.ceil(this.mapwidth / this.cellwidth);
			if (curheight > this.mapheight)
			{
				this.mapheight = curheight;
				vcells = Math.ceil(this.mapheight / this.cellheight);
			}
			if (curwidth > this.mapwidth)
			{
				this.mapwidth = curwidth;
				hcells = Math.ceil(this.mapwidth / this.cellwidth);
			}
			this.setAllQuadMapChanged();
			this.physics_changed = true;
			this.runtime.redraw = true;
		}
		var y, x, arr;
		for (y = 0; y < vcells; ++y)
		{
			arr = this.tilecells[y];
			if (!arr)
			{
				arr = [];
				for (x = 0; x < hcells; ++x)
					arr.push(allocTileCell(this, x, y));
				this.tilecells[y] = arr;
			}
			else
			{
				for (x = arr.length; x < hcells; ++x)
					arr.push(allocTileCell(this, x, y));
			}
		}
	};
	instanceProto.cellAt = function (tx, ty)
	{
		if (tx < 0 || ty < 0)
			return null;
		var cy = cr.floor(ty / this.cellheight);
		if (cy >= this.tilecells.length)
			return null;
		var row = this.tilecells[cy];
		var cx = cr.floor(tx / this.cellwidth);
		if (cx >= row.length)
			return null;
		return row[cx];
	};
	instanceProto.cellAtIndex = function (cx, cy)
	{
		if (cx < 0 || cy < 0 || cy >= this.tilecells.length)
			return null;
		var row = this.tilecells[cy];
		if (cx >= row.length)
			return null;
		return row[cx];
	};
	instanceProto.setTilesFromRLECSV = function (str)
	{
		var tilestream = RunLengthDecode(str);
		var next = 0;
		var y, x, arr, tile, cell;
		for (y = 0; y < this.mapheight; ++y)
		{
			for (x = 0; x < this.mapwidth; ++x)
			{
				tile = tilestream[next++];
				cell = this.cellAt(x, y);
				if (cell)
					cell.setTileAt(x % this.cellwidth, y % this.cellheight, tile);
			}
		}
	};
	instanceProto.getTilesAsRLECSV = function ()
	{
		var ret = "";
		if (this.mapwidth <= 0 || this.mapheight <= 0)
			return ret;
		var run_count = 1;
		var run_number = this.getTileAt(0, 0);
		var y, leny = this.mapheight, x, lenx = this.mapwidth, t;
		var tileid, horiz_flip, vert_flip, diag_flip;
		for (y = 0; y < leny; ++y)
		{
			for (x = (y === 0 ? 1 : 0) ; x < lenx; ++x)
			{
				t = this.getTileAt(x, y);
				if (t === run_number)
					++run_count;
				else
				{
					if (run_number === -1)
					{
						tileid = -1;
						horiz_flip = false;
						vert_flip = false;
						diag_flip = false;
					}
					else
					{
						tileid = (run_number & TILE_ID_MASK);
						horiz_flip = (run_number & TILE_FLIPPED_HORIZONTAL) !== 0;
						vert_flip = (run_number & TILE_FLIPPED_VERTICAL) !== 0;
						diag_flip = (run_number & TILE_FLIPPED_DIAGONAL) !== 0;
					}
					if (run_count === 1)
						ret += "" + tileid;
					else
						ret += "" + run_count + "x" + tileid;
					if (horiz_flip)
						ret += "h";
					if (vert_flip)
						ret += "v";
					if (diag_flip)
						ret += "d";
					ret += ",";
					run_count = 1;
					run_number = t;
				}
			}
		}
		if (run_number === -1)
		{
			tileid = -1;
			horiz_flip = false;
			vert_flip = false;
			diag_flip = false;
		}
		else
		{
			tileid = (run_number & TILE_ID_MASK);
			horiz_flip = (run_number & TILE_FLIPPED_HORIZONTAL) !== 0;
			vert_flip = (run_number & TILE_FLIPPED_VERTICAL) !== 0;
			diag_flip = (run_number & TILE_FLIPPED_DIAGONAL) !== 0;
		}
		if (run_count === 1)
			ret += "" + tileid;
		else
			ret += "" + run_count + "x" + tileid;
		if (horiz_flip)
			ret += "h";
		if (vert_flip)
			ret += "v";
		if (diag_flip)
			ret += "d";
		return ret;
	};
	instanceProto.getTileAt = function (x_, y_)
	{
		x_ = Math.floor(x_);
		y_ = Math.floor(y_);
		if (x_ < 0 || y_ < 0 || x_ >= this.mapwidth || y_ >= this.mapheight)
			return -1;
		var cell = this.cellAt(x_, y_);
		if (!cell)
			return -1;
		return cell.tiles[y_ % this.cellheight][x_ % this.cellwidth];
	};
	instanceProto.setTileAt = function (x_, y_, t_)
	{
		x_ = Math.floor(x_);
		y_ = Math.floor(y_);
		if (x_ < 0 || y_ < 0 || x_ >= this.mapwidth || y_ >= this.mapheight)
			return -1;
		var cell = this.cellAt(x_, y_);
		if (!cell)
			return -1;
		cell.setTileAt(x_ % this.cellwidth, y_ % this.cellheight, t_);
	};
	instanceProto.worldToCellX = function (x)
	{
		return Math.floor((x - this.x) / (this.cellwidth * this.tilewidth));
	};
	instanceProto.worldToCellY = function (y)
	{
		return Math.floor((y - this.y) / (this.cellheight * this.tileheight));
	};
	instanceProto.getCollisionRectCandidates = function (bbox, candidates)
	{
		var firstCellX = this.worldToCellX(bbox.left);
		var firstCellY = this.worldToCellY(bbox.top);
		var lastCellX = this.worldToCellX(bbox.right);
		var lastCellY = this.worldToCellY(bbox.bottom);
		var cx, cy, cell;
		for (cx = firstCellX; cx <= lastCellX; ++cx)
		{
			for (cy = firstCellY; cy <= lastCellY; ++cy)
			{
				cell = this.cellAtIndex(cx, cy);
				if (!cell)
					continue;
				cell.maybeBuildQuadMap();
				cr.appendArray(candidates, cell.collision_rects);
			}
		}
	};
	instanceProto.getAllCollisionRects = function (candidates)
	{
		var i, len, j, lenj, row, cell;
		for (i = 0, len = this.tilecells.length; i < len; ++i)
		{
			row = this.tilecells[i];
			for (j = 0, lenj = row.length; j < lenj; ++j)
			{
				cell = row[j];
				cell.maybeBuildQuadMap();
				cr.appendArray(candidates, cell.collision_rects);
			}
		}
	};
	instanceProto.onDestroy = function ()
	{
		var i, len, j, lenj, arr;
		for (i = 0, len = this.tilecells.length; i < len; ++i)
		{
			arr = this.tilecells[i];
			for (j = 0, lenj = arr.length; j < lenj; ++j)
			{
				freeTileCell(arr[j]);
			}
			arr.length = 0;
		}
		this.tilecells.length = 0;
	};
	instanceProto.saveToJSON = function ()
	{
		return {
			"w": this.mapwidth,
			"h": this.mapheight,
			"d": this.getTilesAsRLECSV()
		};
	};
	instanceProto.loadFromJSON = function (o)
	{
		this.mapwidth = o["w"];
		this.mapheight = o["h"];
		this.setTilesFromRLECSV(o["d"]);
		this.physics_changed = true;
		this.setAllQuadMapChanged();
	};
	instanceProto.draw = function(ctx)
	{
		if (this.tilewidth <= 0 || this.tileheight <= 0)
			return;
		this.type.maybeCutTiles(this.tilewidth, this.tileheight, this.tilexoffset, this.tileyoffset, this.tilexspacing, this.tileyspacing);
		if (this.width !== this.lastwidth || this.height !== this.lastheight)
		{
			this.physics_changed = true;
			this.setAllQuadMapChanged();
			this.maybeBuildAllQuadMap();
			this.lastwidth = this.width;
			this.lastheight = this.height;
		}
		ctx.globalAlpha = this.opacity;
		var layer = this.layer;
		var viewLeft = layer.viewLeft;
		var viewTop = layer.viewTop;
		var viewRight = layer.viewRight;
		var viewBottom = layer.viewBottom;
		var myx = this.x;
		var myy = this.y;
		var qrc;
		if (this.runtime.pixel_rounding)
		{
			myx = (myx + 0.5) | 0;
			myy = (myy + 0.5) | 0;
		}
		var cellWidthPx = this.cellwidth * this.tilewidth;
		var cellHeightPx = this.cellheight * this.tileheight;
		var firstCellX = Math.floor((viewLeft - myx) / cellWidthPx);
		var lastCellX = Math.floor((viewRight - myx) / cellWidthPx);
		var firstCellY = Math.floor((viewTop - myy) / cellHeightPx);
		var lastCellY = Math.floor((viewBottom - myy) / cellHeightPx);
		var offx = myx % this.tilewidth;
		var offy = myy % this.tileheight;
		if (offx !== 0 || offy !== 0)
		{
			ctx.save();
			ctx.translate(offx, offy);
			myx -= offx;
			myy -= offy;
			viewLeft -= offx;
			viewTop -= offy;
			viewRight -= offx;
			viewBottom -= offy;
		}
		var cx, cy, cell, i, len, q, qleft, qtop, qright, qbottom;
		for (cx = firstCellX; cx <= lastCellX; ++cx)
		{
			for (cy = firstCellY; cy <= lastCellY; ++cy)
			{
				cell = this.cellAtIndex(cx, cy);
				if (!cell)
					continue;
				cell.maybeBuildQuadMap();
				for (i = 0, len = cell.quads.length; i < len; ++i)
				{
					q = cell.quads[i];
					if (q.id === -1)
						continue;
					qrc = q.rc;
					qleft = qrc.left + myx;
					qtop = qrc.top + myy;
					qright = qrc.right + myx;
					qbottom = qrc.bottom + myy;
					if (qleft > viewRight || qright < viewLeft || qtop > viewBottom || qbottom < viewTop)
						continue;
					ctx.fillStyle = this.type.GetFlippedTileImage(q.tileid, q.horiz_flip, q.vert_flip, q.diag_flip);
					ctx.fillRect(qleft, qtop, qright - qleft, qbottom - qtop);
				}
				/*
				for (i = 0, len = cell.collision_rects.length; i < len; ++i)
				{
					qrc = cell.collision_rects[i].rc;
					qleft = qrc.left + myx;
					qtop = qrc.top + myy;
					qright = qrc.right + myx;
					qbottom = qrc.bottom + myy;
					ctx.strokeRect(qleft, qtop, qright - qleft, qbottom - qtop);
				}
				*/
			}
		}
		if (offx !== 0 || offy !== 0)
			ctx.restore();
	};
	var tmp_rect = new cr.rect(0, 0, 1, 1);
	instanceProto.drawGL = function (glw)
	{
		if (this.tilewidth <= 0 || this.tileheight <= 0)
			return;
		this.type.maybeCutTiles(this.tilewidth, this.tileheight, this.tilexoffset, this.tileyoffset, this.tilexspacing, this.tileyspacing);
		if (this.width !== this.lastwidth || this.height !== this.lastheight)
		{
			this.physics_changed = true;
			this.setAllQuadMapChanged();
			this.maybeBuildAllQuadMap();
			this.lastwidth = this.width;
			this.lastheight = this.height;
		}
		glw.setOpacity(this.opacity);
		var cut_tiles = this.type.cut_tiles;
		var layer = this.layer;
		var viewLeft = layer.viewLeft;
		var viewTop = layer.viewTop;
		var viewRight = layer.viewRight;
		var viewBottom = layer.viewBottom;
		var myx = this.x;
		var myy = this.y;
		var qrc;
		if (this.runtime.pixel_rounding)
		{
			myx = (myx + 0.5) | 0;
			myy = (myy + 0.5) | 0;
		}
		var cellWidthPx = this.cellwidth * this.tilewidth;
		var cellHeightPx = this.cellheight * this.tileheight;
		var firstCellX = Math.floor((viewLeft - myx) / cellWidthPx);
		var lastCellX = Math.floor((viewRight - myx) / cellWidthPx);
		var firstCellY = Math.floor((viewTop - myy) / cellHeightPx);
		var lastCellY = Math.floor((viewBottom - myy) / cellHeightPx);
		var i, len, q, qleft, qtop, qright, qbottom;
		var qtlx, qtly, qtrx, qtry, qbrx, qbry, qblx, qbly, temp;
		var cx, cy, cell;
		for (cx = firstCellX; cx <= lastCellX; ++cx)
		{
			for (cy = firstCellY; cy <= lastCellY; ++cy)
			{
				cell = this.cellAtIndex(cx, cy);
				if (!cell)
					continue;
				cell.maybeBuildQuadMap();
				for (i = 0, len = cell.quads.length; i < len; ++i)
				{
					q = cell.quads[i];
					if (q.id === -1)
						continue;
					qrc = q.rc;
					qleft = qrc.left + myx;
					qtop = qrc.top + myy;
					qright = qrc.right + myx;
					qbottom = qrc.bottom + myy;
					if (qleft > viewRight || qright < viewLeft || qtop > viewBottom || qbottom < viewTop)
						continue;
					glw.setTexture(cut_tiles[q.tileid]);
					tmp_rect.right = (qright - qleft) / this.tilewidth;
					tmp_rect.bottom = (qbottom - qtop) / this.tileheight;
					if (q.any_flip)
					{
						if (q.diag_flip)
						{
							temp = tmp_rect.right;
							tmp_rect.right = tmp_rect.bottom;
							tmp_rect.bottom = temp;
						}
						qtlx = 0;
						qtly = 0;
						qtrx = tmp_rect.right;
						qtry = 0;
						qbrx = tmp_rect.right;
						qbry = tmp_rect.bottom;
						qblx = 0;
						qbly = tmp_rect.bottom;
						if (q.diag_flip)
						{
							temp = qblx;		qblx = qtrx;		qtrx = temp;
							temp = qbly;		qbly = qtry;		qtry = temp;
						}
						if (q.horiz_flip)
						{
							temp = qtlx;		qtlx = qtrx;		qtrx = temp;
							temp = qtly;		qtly = qtry;		qtry = temp;
							temp = qblx;		qblx = qbrx;		qbrx = temp;
							temp = qbly;		qbly = qbry;		qbry = temp;
						}
						if (q.vert_flip)
						{
							temp = qtlx;		qtlx = qblx;		qblx = temp;
							temp = qtly;		qtly = qbly;		qbly = temp;
							temp = qtrx;		qtrx = qbrx;		qbrx = temp;
							temp = qtry;		qtry = qbry;		qbry = temp;
						}
						glw.quadTexUV(qleft, qtop, qright, qtop, qright, qbottom, qleft, qbottom, qtlx, qtly, qtrx, qtry, qbrx, qbry, qblx, qbly);
					}
					else
					{
						glw.quadTex(qleft, qtop, qright, qtop, qright, qbottom, qleft, qbottom, tmp_rect);
					}
				}
			}
		}
	};
	function Cnds() {};
	Cnds.prototype.CompareTileAt = function (tx, ty, cmp, t)
	{
		var tile = this.getTileAt(tx, ty);
		if (tile !== -1)
			tile = (tile & TILE_ID_MASK);
		return cr.do_cmp(tile, cmp, t);
	};
	function StateComboToFlags(state)
	{
		switch (state) {
		case 0:		// normal
			return 0;
		case 1:		// flipped horizontal
			return TILE_FLIPPED_HORIZONTAL;
		case 2:		// flipped vertical
			return TILE_FLIPPED_VERTICAL;
		case 3:		// rotated 90
			return TILE_FLIPPED_HORIZONTAL | TILE_FLIPPED_DIAGONAL;
		case 4:		// rotated 180
			return TILE_FLIPPED_HORIZONTAL | TILE_FLIPPED_VERTICAL;
		case 5:		// rotated 270
			return TILE_FLIPPED_VERTICAL | TILE_FLIPPED_DIAGONAL;
		case 6:		// rotated 90, flipped vertical
			return TILE_FLIPPED_HORIZONTAL | TILE_FLIPPED_VERTICAL | TILE_FLIPPED_DIAGONAL;
		case 7:		// rotated 270, flipped vertical
			return TILE_FLIPPED_DIAGONAL;
		default:
			return 0;
		}
	};
	Cnds.prototype.CompareTileStateAt = function (tx, ty, state)
	{
		var tile = this.getTileAt(tx, ty);
		var flags = 0;
		if (tile !== -1)
			flags = (tile & TILE_FLAGS_MASK);
		return flags === StateComboToFlags(state);
	};
	pluginProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.EraseTile = function (tx, ty)
	{
		this.maybeResizeTilemap();
		this.setTileAt(tx, ty, -1);
	};
	Acts.prototype.SetTile = function (tx, ty, t, state)
	{
		this.maybeResizeTilemap();
		this.setTileAt(tx, ty, (t & TILE_ID_MASK) | StateComboToFlags(state));
	};
	Acts.prototype.SetTileState = function (tx, ty, state)
	{
		var t = this.getTileAt(tx, ty);
		if (t !== -1)
		{
			this.maybeResizeTilemap();
			this.setTileAt(tx, ty, (t & TILE_ID_MASK) | StateComboToFlags(state));
		}
	};
	Acts.prototype.EraseTileRange = function (tx, ty, tw, th)
	{
		var fromx = Math.floor(cr.max(tx, 0));
		var fromy = Math.floor(cr.max(ty, 0));
		var tox = Math.floor(cr.min(tx + tw, this.mapwidth));
		var toy = Math.floor(cr.min(ty + th, this.mapheight));
		var x, y;
		for (y = fromy; y < toy; ++y)
		{
			for (x = fromx; x < tox; ++x)
			{
				this.setTileAt(x, y, -1);
			}
		}
	};
	Acts.prototype.SetTileRange = function (tx, ty, tw, th, t, state)
	{
		this.maybeResizeTilemap();
		var fromx = Math.floor(cr.max(tx, 0));
		var fromy = Math.floor(cr.max(ty, 0));
		var tox = Math.floor(cr.min(tx + tw, this.mapwidth));
		var toy = Math.floor(cr.min(ty + th, this.mapheight));
		var settile = (t & TILE_ID_MASK) | StateComboToFlags(state);
		var x, y;
		for (y = fromy; y < toy; ++y)
		{
			for (x = fromx; x < tox; ++x)
			{
				this.setTileAt(x, y, settile);
			}
		}
	};
	Acts.prototype.SetTileStateRange = function (tx, ty, tw, th, state)
	{
		this.maybeResizeTilemap();
		var fromx = Math.floor(cr.max(tx, 0));
		var fromy = Math.floor(cr.max(ty, 0));
		var tox = Math.floor(cr.min(tx + tw, this.mapwidth));
		var toy = Math.floor(cr.min(ty + th, this.mapheight));
		var setstate = StateComboToFlags(state);
		var x, y, t;
		for (y = fromy; y < toy; ++y)
		{
			for (x = fromx; x < tox; ++x)
			{
				t = this.getTileAt(x, y);
				if (t !== -1)
					this.setTileAt(x, y, (t & TILE_ID_MASK) | setstate);
			}
		}
	};
	Acts.prototype.LoadFromJSON = function (str)
	{
		var o;
		try {
			o = JSON.parse(str);
		}
		catch (e) {
			return;
		}
		if (!o["c2tilemap"])
			return;		// not a known tilemap data format
		this.mapwidth = o["width"];
		this.mapheight = o["height"];
		this.setTilesFromRLECSV(o["data"]);
		this.setAllQuadMapChanged();
		this.physics_changed = true;
	};
	Acts.prototype.JSONDownload = function (filename)
	{
		var a = document.createElement("a");
		var o = {
			"c2tilemap": true,
			"width": this.mapwidth,
			"height": this.mapheight,
			"data": this.getTilesAsRLECSV()
		};
		if (typeof a.download === "undefined")
		{
			var str = 'data:text/html,' + encodeURIComponent("<p><a download='data.json' href=\"data:application/json,"
				+ encodeURIComponent(JSON.stringify(o))
				+ "\">Download link</a></p>");
			window.open(str);
		}
		else
		{
			var body = document.getElementsByTagName("body")[0];
			a.textContent = filename;
			a.href = "data:application/json," + encodeURIComponent(JSON.stringify(o));
			a.download = filename;
			body.appendChild(a);
			var clickEvent = document.createEvent("MouseEvent");
			clickEvent.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
			a.dispatchEvent(clickEvent);
			body.removeChild(a);
		}
	};
	pluginProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.TileAt = function (ret, tx, ty)
	{
		var tile = this.getTileAt(tx, ty);
		ret.set_int(tile === -1 ? -1 : (tile & TILE_ID_MASK));
	};
	Exps.prototype.PositionToTileX = function (ret, x_)
	{
		ret.set_float(Math.floor((x_ - this.x) / this.tilewidth));
	};
	Exps.prototype.PositionToTileY = function (ret, y_)
	{
		ret.set_float(Math.floor((y_ - this.y) / this.tileheight));
	};
	Exps.prototype.TileToPositionX = function (ret, x_)
	{
		ret.set_float((x_ * this.tilewidth) + this.x + (this.tilewidth / 2));
	};
	Exps.prototype.TileToPositionY = function (ret, y_)
	{
		ret.set_float((y_ * this.tileheight) + this.y + (this.tileheight / 2));
	};
	Exps.prototype.SnapX = function (ret, x_)
	{
		ret.set_float((Math.floor((x_ - this.x) / this.tilewidth) * this.tilewidth) + this.x + (this.tilewidth / 2));
	};
	Exps.prototype.SnapY = function (ret, y_)
	{
		ret.set_float((Math.floor((y_ - this.y) / this.tileheight) * this.tileheight) + this.y + (this.tileheight / 2));
	};
	Exps.prototype.TilesJSON = function (ret)
	{
		ret.set_string(JSON.stringify({
			"c2tilemap": true,
			"width": this.mapwidth,
			"height": this.mapheight,
			"data": this.getTilesAsRLECSV()
		}));
	};
	pluginProto.exps = new Exps();
}());
;
;
cr.plugins_.Touch = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var pluginProto = cr.plugins_.Touch.prototype;
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	typeProto.onCreate = function()
	{
	};
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
		this.touches = [];
		this.mouseDown = false;
	};
	var instanceProto = pluginProto.Instance.prototype;
	var dummyoffset = {left: 0, top: 0};
	instanceProto.findTouch = function (id)
	{
		var i, len;
		for (i = 0, len = this.touches.length; i < len; i++)
		{
			if (this.touches[i]["id"] === id)
				return i;
		}
		return -1;
	};
	var appmobi_accx = 0;
	var appmobi_accy = 0;
	var appmobi_accz = 0;
	function AppMobiGetAcceleration(evt)
	{
		appmobi_accx = evt.x;
		appmobi_accy = evt.y;
		appmobi_accz = evt.z;
	};
	var pg_accx = 0;
	var pg_accy = 0;
	var pg_accz = 0;
	function PhoneGapGetAcceleration(evt)
	{
		pg_accx = evt.x;
		pg_accy = evt.y;
		pg_accz = evt.z;
	};
	var theInstance = null;
	instanceProto.onCreate = function()
	{
		theInstance = this;
		this.isWindows8 = !!(typeof window["c2isWindows8"] !== "undefined" && window["c2isWindows8"]);
		this.orient_alpha = 0;
		this.orient_beta = 0;
		this.orient_gamma = 0;
		this.acc_g_x = 0;
		this.acc_g_y = 0;
		this.acc_g_z = 0;
		this.acc_x = 0;
		this.acc_y = 0;
		this.acc_z = 0;
		this.curTouchX = 0;
		this.curTouchY = 0;
		this.trigger_index = 0;
		this.trigger_id = 0;
		this.useMouseInput = (this.properties[0] !== 0);
		var elem = (this.runtime.fullscreen_mode > 0) ? document : this.runtime.canvas;
		var elem2 = document;
		if (this.runtime.isDirectCanvas)
			elem2 = elem = window["Canvas"];
		else if (this.runtime.isCocoonJs)
			elem2 = elem = window;
		var self = this;
		if (window.navigator["pointerEnabled"])
		{
			elem.addEventListener("pointerdown",
				function(info) {
					self.onPointerStart(info);
				},
				false
			);
			elem.addEventListener("pointermove",
				function(info) {
					self.onPointerMove(info);
				},
				false
			);
			elem2.addEventListener("pointerup",
				function(info) {
					self.onPointerEnd(info);
				},
				false
			);
			elem2.addEventListener("pointercancel",
				function(info) {
					self.onPointerEnd(info);
				},
				false
			);
			if (this.runtime.canvas)
			{
				this.runtime.canvas.addEventListener("MSGestureHold", function(e) {
					e.preventDefault();
				}, false);
				document.addEventListener("MSGestureHold", function(e) {
					e.preventDefault();
				}, false);
				this.runtime.canvas.addEventListener("gesturehold", function(e) {
					e.preventDefault();
				}, false);
				document.addEventListener("gesturehold", function(e) {
					e.preventDefault();
				}, false);
			}
		}
		else if (window.navigator["msPointerEnabled"])
		{
			elem.addEventListener("MSPointerDown",
				function(info) {
					self.onPointerStart(info);
				},
				false
			);
			elem.addEventListener("MSPointerMove",
				function(info) {
					self.onPointerMove(info);
				},
				false
			);
			elem2.addEventListener("MSPointerUp",
				function(info) {
					self.onPointerEnd(info);
				},
				false
			);
			elem2.addEventListener("MSPointerCancel",
				function(info) {
					self.onPointerEnd(info);
				},
				false
			);
			if (this.runtime.canvas)
			{
				this.runtime.canvas.addEventListener("MSGestureHold", function(e) {
					e.preventDefault();
				}, false);
				document.addEventListener("MSGestureHold", function(e) {
					e.preventDefault();
				}, false);
			}
		}
		else
		{
			elem.addEventListener("touchstart",
				function(info) {
					self.onTouchStart(info);
				},
				false
			);
			elem.addEventListener("touchmove",
				function(info) {
					self.onTouchMove(info);
				},
				false
			);
			elem2.addEventListener("touchend",
				function(info) {
					self.onTouchEnd(info);
				},
				false
			);
			elem2.addEventListener("touchcancel",
				function(info) {
					self.onTouchEnd(info);
				},
				false
			);
		}
		if (this.isWindows8)
		{
			var win8accelerometerFn = function(e) {
					var reading = e["reading"];
					self.acc_x = reading["accelerationX"];
					self.acc_y = reading["accelerationY"];
					self.acc_z = reading["accelerationZ"];
				};
			var win8inclinometerFn = function(e) {
					var reading = e["reading"];
					self.orient_alpha = reading["yawDegrees"];
					self.orient_beta = reading["pitchDegrees"];
					self.orient_gamma = reading["rollDegrees"];
				};
			var accelerometer = Windows["Devices"]["Sensors"]["Accelerometer"]["getDefault"]();
            if (accelerometer)
			{
                accelerometer["reportInterval"] = Math.max(accelerometer["minimumReportInterval"], 16);
				accelerometer.addEventListener("readingchanged", win8accelerometerFn);
            }
			var inclinometer = Windows["Devices"]["Sensors"]["Inclinometer"]["getDefault"]();
			if (inclinometer)
			{
				inclinometer["reportInterval"] = Math.max(inclinometer["minimumReportInterval"], 16);
				inclinometer.addEventListener("readingchanged", win8inclinometerFn);
			}
			document.addEventListener("visibilitychange", function(e) {
				if (document["hidden"] || document["msHidden"])
				{
					if (accelerometer)
						accelerometer.removeEventListener("readingchanged", win8accelerometerFn);
					if (inclinometer)
						inclinometer.removeEventListener("readingchanged", win8inclinometerFn);
				}
				else
				{
					if (accelerometer)
						accelerometer.addEventListener("readingchanged", win8accelerometerFn);
					if (inclinometer)
						inclinometer.addEventListener("readingchanged", win8inclinometerFn);
				}
			}, false);
		}
		else
		{
			window.addEventListener("deviceorientation", function (eventData) {
				self.orient_alpha = eventData["alpha"] || 0;
				self.orient_beta = eventData["beta"] || 0;
				self.orient_gamma = eventData["gamma"] || 0;
			}, false);
			window.addEventListener("devicemotion", function (eventData) {
				if (eventData["accelerationIncludingGravity"])
				{
					self.acc_g_x = eventData["accelerationIncludingGravity"]["x"] || 0;
					self.acc_g_y = eventData["accelerationIncludingGravity"]["y"] || 0;
					self.acc_g_z = eventData["accelerationIncludingGravity"]["z"] || 0;
				}
				if (eventData["acceleration"])
				{
					self.acc_x = eventData["acceleration"]["x"] || 0;
					self.acc_y = eventData["acceleration"]["y"] || 0;
					self.acc_z = eventData["acceleration"]["z"] || 0;
				}
			}, false);
		}
		if (this.useMouseInput && !this.runtime.isDomFree)
		{
			jQuery(document).mousemove(
				function(info) {
					self.onMouseMove(info);
				}
			);
			jQuery(document).mousedown(
				function(info) {
					self.onMouseDown(info);
				}
			);
			jQuery(document).mouseup(
				function(info) {
					self.onMouseUp(info);
				}
			);
		}
		if (this.runtime.isAppMobi && !this.runtime.isDirectCanvas)
		{
			AppMobi["accelerometer"]["watchAcceleration"](AppMobiGetAcceleration, { "frequency": 40, "adjustForRotation": true });
		}
		if (this.runtime.isPhoneGap)
		{
			navigator["accelerometer"]["watchAcceleration"](PhoneGapGetAcceleration, null, { "frequency": 40 });
		}
		this.runtime.tick2Me(this);
	};
	instanceProto.onPointerMove = function (info)
	{
		if (info["pointerType"] === info["MSPOINTER_TYPE_MOUSE"] || info["pointerType"] === "mouse")
			return;
		if (info.preventDefault)
			info.preventDefault();
		var i = this.findTouch(info["pointerId"]);
		var nowtime = cr.performance_now();
		if (i >= 0)
		{
			var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset();
			var t = this.touches[i];
			if (nowtime - t.time < 2)
				return;
			t.lasttime = t.time;
			t.lastx = t.x;
			t.lasty = t.y;
			t.time = nowtime;
			t.x = info.pageX - offset.left;
			t.y = info.pageY - offset.top;
		}
	};
	instanceProto.onPointerStart = function (info)
	{
		if (info["pointerType"] === info["MSPOINTER_TYPE_MOUSE"] || info["pointerType"] === "mouse")
			return;
		if (info.preventDefault)
			info.preventDefault();
		var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset();
		var touchx = info.pageX - offset.left;
		var touchy = info.pageY - offset.top;
		var nowtime = cr.performance_now();
		this.trigger_index = this.touches.length;
		this.trigger_id = info["pointerId"];
		this.touches.push({ time: nowtime,
							x: touchx,
							y: touchy,
							lasttime: nowtime,
							lastx: touchx,
							lasty: touchy,
							"id": info["pointerId"],
							startindex: this.trigger_index
						});
		this.runtime.isInUserInputEvent = true;
		this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnNthTouchStart, this);
		this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchStart, this);
		this.curTouchX = touchx;
		this.curTouchY = touchy;
		this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchObject, this);
		this.runtime.isInUserInputEvent = false;
	};
	instanceProto.onPointerEnd = function (info)
	{
		if (info["pointerType"] === info["MSPOINTER_TYPE_MOUSE"] || info["pointerType"] === "mouse")
			return;
		if (info.preventDefault)
			info.preventDefault();
		var i = this.findTouch(info["pointerId"]);
		this.trigger_index = (i >= 0 ? this.touches[i].startindex : -1);
		this.trigger_id = (i >= 0 ? this.touches[i]["id"] : -1);
		this.runtime.isInUserInputEvent = true;
		this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnNthTouchEnd, this);
		this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchEnd, this);
		this.runtime.isInUserInputEvent = false;
		if (i >= 0)
		{
			this.touches.splice(i, 1);
		}
	};
	instanceProto.onTouchMove = function (info)
	{
		if (info.preventDefault)
			info.preventDefault();
		var nowtime = cr.performance_now();
		var i, len, t, u;
		for (i = 0, len = info.changedTouches.length; i < len; i++)
		{
			t = info.changedTouches[i];
			var j = this.findTouch(t["identifier"]);
			if (j >= 0)
			{
				var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset();
				u = this.touches[j];
				if (nowtime - u.time < 2)
					continue;
				u.lasttime = u.time;
				u.lastx = u.x;
				u.lasty = u.y;
				u.time = nowtime;
				u.x = t.pageX - offset.left;
				u.y = t.pageY - offset.top;
			}
		}
	};
	instanceProto.onTouchStart = function (info)
	{
		if (info.preventDefault)
			info.preventDefault();
		var offset = this.runtime.isDomFree ? dummyoffset : jQuery(this.runtime.canvas).offset();
		var nowtime = cr.performance_now();
		this.runtime.isInUserInputEvent = true;
		var i, len, t, j;
		for (i = 0, len = info.changedTouches.length; i < len; i++)
		{
			t = info.changedTouches[i];
			j = this.findTouch(t["identifier"]);
			if (j !== -1)
				continue;
			var touchx = t.pageX - offset.left;
			var touchy = t.pageY - offset.top;
			this.trigger_index = this.touches.length;
			this.trigger_id = t["identifier"];
			this.touches.push({ time: nowtime,
								x: touchx,
								y: touchy,
								lasttime: nowtime,
								lastx: touchx,
								lasty: touchy,
								"id": t["identifier"],
								startindex: this.trigger_index
							});
			this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnNthTouchStart, this);
			this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchStart, this);
			this.curTouchX = touchx;
			this.curTouchY = touchy;
			this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchObject, this);
		}
		this.runtime.isInUserInputEvent = false;
	};
	instanceProto.onTouchEnd = function (info)
	{
		if (info.preventDefault)
			info.preventDefault();
		this.runtime.isInUserInputEvent = true;
		var i, len, t, j;
		for (i = 0, len = info.changedTouches.length; i < len; i++)
		{
			t = info.changedTouches[i];
			j = this.findTouch(t["identifier"]);
			if (j >= 0)
			{
				this.trigger_index = this.touches[j].startindex;
				this.trigger_id = this.touches[j]["id"];
				this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnNthTouchEnd, this);
				this.runtime.trigger(cr.plugins_.Touch.prototype.cnds.OnTouchEnd, this);
				this.touches.splice(j, 1);
			}
		}
		this.runtime.isInUserInputEvent = false;
	};
	instanceProto.getAlpha = function ()
	{
		if (this.runtime.isAppMobi && this.orient_alpha === 0 && appmobi_accz !== 0)
			return appmobi_accz * 90;
		else if (this.runtime.isPhoneGap  && this.orient_alpha === 0 && pg_accz !== 0)
			return pg_accz * 90;
		else
			return this.orient_alpha;
	};
	instanceProto.getBeta = function ()
	{
		if (this.runtime.isAppMobi && this.orient_beta === 0 && appmobi_accy !== 0)
			return appmobi_accy * -90;
		else if (this.runtime.isPhoneGap  && this.orient_beta === 0 && pg_accy !== 0)
			return pg_accy * -90;
		else
			return this.orient_beta;
	};
	instanceProto.getGamma = function ()
	{
		if (this.runtime.isAppMobi && this.orient_gamma === 0 && appmobi_accx !== 0)
			return appmobi_accx * 90;
		else if (this.runtime.isPhoneGap  && this.orient_gamma === 0 && pg_accx !== 0)
			return pg_accx * 90;
		else
			return this.orient_gamma;
	};
	var noop_func = function(){};
	instanceProto.onMouseDown = function(info)
	{
		if (info.preventDefault && this.runtime.had_a_click)
			info.preventDefault();
		var t = { pageX: info.pageX, pageY: info.pageY, "identifier": 0 };
		var fakeinfo = { changedTouches: [t] };
		this.onTouchStart(fakeinfo);
		this.mouseDown = true;
	};
	instanceProto.onMouseMove = function(info)
	{
		if (info.preventDefault && this.runtime.had_a_click)
			info.preventDefault();
		if (!this.mouseDown)
			return;
		var t = { pageX: info.pageX, pageY: info.pageY, "identifier": 0 };
		var fakeinfo = { changedTouches: [t] };
		this.onTouchMove(fakeinfo);
	};
	instanceProto.onMouseUp = function(info)
	{
		if (info.preventDefault && this.runtime.had_a_click)
			info.preventDefault();
		this.runtime.had_a_click = true;
		var t = { pageX: info.pageX, pageY: info.pageY, "identifier": 0 };
		var fakeinfo = { changedTouches: [t] };
		this.onTouchEnd(fakeinfo);
		this.mouseDown = false;
	};
	instanceProto.tick2 = function()
	{
		var i, len, t;
		var nowtime = cr.performance_now();
		for (i = 0, len = this.touches.length; i < len; i++)
		{
			t = this.touches[i];
			if (t.time <= nowtime - 50)
				t.lasttime = nowtime;
		}
	};
	function Cnds() {};
	Cnds.prototype.OnTouchStart = function ()
	{
		return true;
	};
	Cnds.prototype.OnTouchEnd = function ()
	{
		return true;
	};
	Cnds.prototype.IsInTouch = function ()
	{
		return this.touches.length;
	};
	Cnds.prototype.OnTouchObject = function (type)
	{
		if (!type)
			return false;
		return this.runtime.testAndSelectCanvasPointOverlap(type, this.curTouchX, this.curTouchY, false);
	};
	Cnds.prototype.IsTouchingObject = function (type)
	{
		if (!type)
			return false;
		var sol = type.getCurrentSol();
		var instances = sol.getObjects();
		var px, py;
		var touching = [];
		var i, leni, j, lenj;
		for (i = 0, leni = instances.length; i < leni; i++)
		{
			var inst = instances[i];
			inst.update_bbox();
			for (j = 0, lenj = this.touches.length; j < lenj; j++)
			{
				var touch = this.touches[j];
				px = inst.layer.canvasToLayer(touch.x, touch.y, true);
				py = inst.layer.canvasToLayer(touch.x, touch.y, false);
				if (inst.contains_pt(px, py))
				{
					touching.push(inst);
					break;
				}
			}
		}
		if (touching.length)
		{
			sol.select_all = false;
			sol.instances = touching;
			type.applySolToContainer();
			return true;
		}
		else
			return false;
	};
	Cnds.prototype.CompareTouchSpeed = function (index, cmp, s)
	{
		index = Math.floor(index);
		if (index < 0 || index >= this.touches.length)
			return false;
		var t = this.touches[index];
		var dist = cr.distanceTo(t.x, t.y, t.lastx, t.lasty);
		var timediff = (t.time - t.lasttime) / 1000;
		var speed = 0;
		if (timediff > 0)
			speed = dist / timediff;
		return cr.do_cmp(speed, cmp, s);
	};
	Cnds.prototype.OrientationSupported = function ()
	{
		return typeof window["DeviceOrientationEvent"] !== "undefined";
	};
	Cnds.prototype.MotionSupported = function ()
	{
		return typeof window["DeviceMotionEvent"] !== "undefined";
	};
	Cnds.prototype.CompareOrientation = function (orientation_, cmp_, angle_)
	{
		var v = 0;
		if (orientation_ === 0)
			v = this.getAlpha();
		else if (orientation_ === 1)
			v = this.getBeta();
		else
			v = this.getGamma();
		return cr.do_cmp(v, cmp_, angle_);
	};
	Cnds.prototype.CompareAcceleration = function (acceleration_, cmp_, angle_)
	{
		var v = 0;
		if (acceleration_ === 0)
			v = this.acc_g_x;
		else if (acceleration_ === 1)
			v = this.acc_g_y;
		else if (acceleration_ === 2)
			v = this.acc_g_z;
		else if (acceleration_ === 3)
			v = this.acc_x;
		else if (acceleration_ === 4)
			v = this.acc_y;
		else if (acceleration_ === 5)
			v = this.acc_z;
		return cr.do_cmp(v, cmp_, angle_);
	};
	Cnds.prototype.OnNthTouchStart = function (touch_)
	{
		touch_ = Math.floor(touch_);
		return touch_ === this.trigger_index;
	};
	Cnds.prototype.OnNthTouchEnd = function (touch_)
	{
		touch_ = Math.floor(touch_);
		return touch_ === this.trigger_index;
	};
	Cnds.prototype.HasNthTouch = function (touch_)
	{
		touch_ = Math.floor(touch_);
		return this.touches.length >= touch_ + 1;
	};
	pluginProto.cnds = new Cnds();
	function Exps() {};
	Exps.prototype.TouchCount = function (ret)
	{
		ret.set_int(this.touches.length);
	};
	Exps.prototype.X = function (ret, layerparam)
	{
		if (this.touches.length)
		{
			var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle;
			if (cr.is_undefined(layerparam))
			{
				layer = this.runtime.getLayerByNumber(0);
				oldScale = layer.scale;
				oldZoomRate = layer.zoomRate;
				oldParallaxX = layer.parallaxX;
				oldAngle = layer.angle;
				layer.scale = this.runtime.running_layout.scale;
				layer.zoomRate = 1.0;
				layer.parallaxX = 1.0;
				layer.angle = this.runtime.running_layout.angle;
				ret.set_float(layer.canvasToLayer(this.touches[0].x, this.touches[0].y, true));
				layer.scale = oldScale;
				layer.zoomRate = oldZoomRate;
				layer.parallaxX = oldParallaxX;
				layer.angle = oldAngle;
			}
			else
			{
				if (cr.is_number(layerparam))
					layer = this.runtime.getLayerByNumber(layerparam);
				else
					layer = this.runtime.getLayerByName(layerparam);
				if (layer)
					ret.set_float(layer.canvasToLayer(this.touches[0].x, this.touches[0].y, true));
				else
					ret.set_float(0);
			}
		}
		else
			ret.set_float(0);
	};
	Exps.prototype.XAt = function (ret, index, layerparam)
	{
		index = Math.floor(index);
		if (index < 0 || index >= this.touches.length)
		{
			ret.set_float(0);
			return;
		}
		var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle;
		if (cr.is_undefined(layerparam))
		{
			layer = this.runtime.getLayerByNumber(0);
			oldScale = layer.scale;
			oldZoomRate = layer.zoomRate;
			oldParallaxX = layer.parallaxX;
			oldAngle = layer.angle;
			layer.scale = this.runtime.running_layout.scale;
			layer.zoomRate = 1.0;
			layer.parallaxX = 1.0;
			layer.angle = this.runtime.running_layout.angle;
			ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, true));
			layer.scale = oldScale;
			layer.zoomRate = oldZoomRate;
			layer.parallaxX = oldParallaxX;
			layer.angle = oldAngle;
		}
		else
		{
			if (cr.is_number(layerparam))
				layer = this.runtime.getLayerByNumber(layerparam);
			else
				layer = this.runtime.getLayerByName(layerparam);
			if (layer)
				ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, true));
			else
				ret.set_float(0);
		}
	};
	Exps.prototype.XForID = function (ret, id, layerparam)
	{
		var index = this.findTouch(id);
		if (index < 0)
		{
			ret.set_float(0);
			return;
		}
		var touch = this.touches[index];
		var layer, oldScale, oldZoomRate, oldParallaxX, oldAngle;
		if (cr.is_undefined(layerparam))
		{
			layer = this.runtime.getLayerByNumber(0);
			oldScale = layer.scale;
			oldZoomRate = layer.zoomRate;
			oldParallaxX = layer.parallaxX;
			oldAngle = layer.angle;
			layer.scale = this.runtime.running_layout.scale;
			layer.zoomRate = 1.0;
			layer.parallaxX = 1.0;
			layer.angle = this.runtime.running_layout.angle;
			ret.set_float(layer.canvasToLayer(touch.x, touch.y, true));
			layer.scale = oldScale;
			layer.zoomRate = oldZoomRate;
			layer.parallaxX = oldParallaxX;
			layer.angle = oldAngle;
		}
		else
		{
			if (cr.is_number(layerparam))
				layer = this.runtime.getLayerByNumber(layerparam);
			else
				layer = this.runtime.getLayerByName(layerparam);
			if (layer)
				ret.set_float(layer.canvasToLayer(touch.x, touch.y, true));
			else
				ret.set_float(0);
		}
	};
	Exps.prototype.Y = function (ret, layerparam)
	{
		if (this.touches.length)
		{
			var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle;
			if (cr.is_undefined(layerparam))
			{
				layer = this.runtime.getLayerByNumber(0);
				oldScale = layer.scale;
				oldZoomRate = layer.zoomRate;
				oldParallaxY = layer.parallaxY;
				oldAngle = layer.angle;
				layer.scale = this.runtime.running_layout.scale;
				layer.zoomRate = 1.0;
				layer.parallaxY = 1.0;
				layer.angle = this.runtime.running_layout.angle;
				ret.set_float(layer.canvasToLayer(this.touches[0].x, this.touches[0].y, false));
				layer.scale = oldScale;
				layer.zoomRate = oldZoomRate;
				layer.parallaxY = oldParallaxY;
				layer.angle = oldAngle;
			}
			else
			{
				if (cr.is_number(layerparam))
					layer = this.runtime.getLayerByNumber(layerparam);
				else
					layer = this.runtime.getLayerByName(layerparam);
				if (layer)
					ret.set_float(layer.canvasToLayer(this.touches[0].x, this.touches[0].y, false));
				else
					ret.set_float(0);
			}
		}
		else
			ret.set_float(0);
	};
	Exps.prototype.YAt = function (ret, index, layerparam)
	{
		index = Math.floor(index);
		if (index < 0 || index >= this.touches.length)
		{
			ret.set_float(0);
			return;
		}
		var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle;
		if (cr.is_undefined(layerparam))
		{
			layer = this.runtime.getLayerByNumber(0);
			oldScale = layer.scale;
			oldZoomRate = layer.zoomRate;
			oldParallaxY = layer.parallaxY;
			oldAngle = layer.angle;
			layer.scale = this.runtime.running_layout.scale;
			layer.zoomRate = 1.0;
			layer.parallaxY = 1.0;
			layer.angle = this.runtime.running_layout.angle;
			ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, false));
			layer.scale = oldScale;
			layer.zoomRate = oldZoomRate;
			layer.parallaxY = oldParallaxY;
			layer.angle = oldAngle;
		}
		else
		{
			if (cr.is_number(layerparam))
				layer = this.runtime.getLayerByNumber(layerparam);
			else
				layer = this.runtime.getLayerByName(layerparam);
			if (layer)
				ret.set_float(layer.canvasToLayer(this.touches[index].x, this.touches[index].y, false));
			else
				ret.set_float(0);
		}
	};
	Exps.prototype.YForID = function (ret, id, layerparam)
	{
		var index = this.findTouch(id);
		if (index < 0)
		{
			ret.set_float(0);
			return;
		}
		var touch = this.touches[index];
		var layer, oldScale, oldZoomRate, oldParallaxY, oldAngle;
		if (cr.is_undefined(layerparam))
		{
			layer = this.runtime.getLayerByNumber(0);
			oldScale = layer.scale;
			oldZoomRate = layer.zoomRate;
			oldParallaxY = layer.parallaxY;
			oldAngle = layer.angle;
			layer.scale = this.runtime.running_layout.scale;
			layer.zoomRate = 1.0;
			layer.parallaxY = 1.0;
			layer.angle = this.runtime.running_layout.angle;
			ret.set_float(layer.canvasToLayer(touch.x, touch.y, false));
			layer.scale = oldScale;
			layer.zoomRate = oldZoomRate;
			layer.parallaxY = oldParallaxY;
			layer.angle = oldAngle;
		}
		else
		{
			if (cr.is_number(layerparam))
				layer = this.runtime.getLayerByNumber(layerparam);
			else
				layer = this.runtime.getLayerByName(layerparam);
			if (layer)
				ret.set_float(layer.canvasToLayer(touch.x, touch.y, false));
			else
				ret.set_float(0);
		}
	};
	Exps.prototype.AbsoluteX = function (ret)
	{
		if (this.touches.length)
			ret.set_float(this.touches[0].x);
		else
			ret.set_float(0);
	};
	Exps.prototype.AbsoluteXAt = function (ret, index)
	{
		index = Math.floor(index);
		if (index < 0 || index >= this.touches.length)
		{
			ret.set_float(0);
			return;
		}
		ret.set_float(this.touches[index].x);
	};
	Exps.prototype.AbsoluteXForID = function (ret, id)
	{
		var index = this.findTouch(id);
		if (index < 0)
		{
			ret.set_float(0);
			return;
		}
		var touch = this.touches[index];
		ret.set_float(touch.x);
	};
	Exps.prototype.AbsoluteY = function (ret)
	{
		if (this.touches.length)
			ret.set_float(this.touches[0].y);
		else
			ret.set_float(0);
	};
	Exps.prototype.AbsoluteYAt = function (ret, index)
	{
		index = Math.floor(index);
		if (index < 0 || index >= this.touches.length)
		{
			ret.set_float(0);
			return;
		}
		ret.set_float(this.touches[index].y);
	};
	Exps.prototype.AbsoluteYForID = function (ret, id)
	{
		var index = this.findTouch(id);
		if (index < 0)
		{
			ret.set_float(0);
			return;
		}
		var touch = this.touches[index];
		ret.set_float(touch.y);
	};
	Exps.prototype.SpeedAt = function (ret, index)
	{
		index = Math.floor(index);
		if (index < 0 || index >= this.touches.length)
		{
			ret.set_float(0);
			return;
		}
		var t = this.touches[index];
		var dist = cr.distanceTo(t.x, t.y, t.lastx, t.lasty);
		var timediff = (t.time - t.lasttime) / 1000;
		if (timediff === 0)
			ret.set_float(0);
		else
			ret.set_float(dist / timediff);
	};
	Exps.prototype.SpeedForID = function (ret, id)
	{
		var index = this.findTouch(id);
		if (index < 0)
		{
			ret.set_float(0);
			return;
		}
		var touch = this.touches[index];
		var dist = cr.distanceTo(touch.x, touch.y, touch.lastx, touch.lasty);
		var timediff = (touch.time - touch.lasttime) / 1000;
		if (timediff === 0)
			ret.set_float(0);
		else
			ret.set_float(dist / timediff);
	};
	Exps.prototype.AngleAt = function (ret, index)
	{
		index = Math.floor(index);
		if (index < 0 || index >= this.touches.length)
		{
			ret.set_float(0);
			return;
		}
		var t = this.touches[index];
		ret.set_float(cr.to_degrees(cr.angleTo(t.lastx, t.lasty, t.x, t.y)));
	};
	Exps.prototype.AngleForID = function (ret, id)
	{
		var index = this.findTouch(id);
		if (index < 0)
		{
			ret.set_float(0);
			return;
		}
		var touch = this.touches[index];
		ret.set_float(cr.to_degrees(cr.angleTo(touch.lastx, touch.lasty, touch.x, touch.y)));
	};
	Exps.prototype.Alpha = function (ret)
	{
		ret.set_float(this.getAlpha());
	};
	Exps.prototype.Beta = function (ret)
	{
		ret.set_float(this.getBeta());
	};
	Exps.prototype.Gamma = function (ret)
	{
		ret.set_float(this.getGamma());
	};
	Exps.prototype.AccelerationXWithG = function (ret)
	{
		ret.set_float(this.acc_g_x);
	};
	Exps.prototype.AccelerationYWithG = function (ret)
	{
		ret.set_float(this.acc_g_y);
	};
	Exps.prototype.AccelerationZWithG = function (ret)
	{
		ret.set_float(this.acc_g_z);
	};
	Exps.prototype.AccelerationX = function (ret)
	{
		ret.set_float(this.acc_x);
	};
	Exps.prototype.AccelerationY = function (ret)
	{
		ret.set_float(this.acc_y);
	};
	Exps.prototype.AccelerationZ = function (ret)
	{
		ret.set_float(this.acc_z);
	};
	Exps.prototype.TouchIndex = function (ret)
	{
		ret.set_int(this.trigger_index);
	};
	Exps.prototype.TouchID = function (ret)
	{
		ret.set_float(this.trigger_id);
	};
	pluginProto.exps = new Exps();
}());
;
;
cr.plugins_.WebStorage = function(runtime)
{
	this.runtime = runtime;
};
(function()
{
	var pluginProto = cr.plugins_.WebStorage.prototype;
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	typeProto.onCreate = function()
	{
	};
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
	};
	var instanceProto = pluginProto.Instance.prototype;
	var prefix = "";
	var is_arcade = (typeof window["is_scirra_arcade"] !== "undefined");
	if (is_arcade)
		prefix = "arcade" + window["scirra_arcade_id"];
	var logged_sessionnotsupported = false;
	function LogSessionNotSupported()
	{
		if (logged_sessionnotsupported)
			return;
		cr.logexport("[Construct 2] Webstorage plugin: session storage is not supported on this platform. Try using local storage or global variables instead.");
		logged_sessionnotsupported = true;
	};
	instanceProto.onCreate = function()
	{
	};
	function Cnds() {};
	Cnds.prototype.LocalStorageEnabled = function()
	{
		return true;
	};
	Cnds.prototype.SessionStorageEnabled = function()
	{
		return true;
	};
	Cnds.prototype.LocalStorageExists = function(key)
	{
		return localStorage.getItem(prefix + key) != null;
	};
	Cnds.prototype.SessionStorageExists = function(key)
	{
		if (this.runtime.isCocoonJs || !sessionStorage)
		{
			LogSessionNotSupported();
			return false;
		}
		return sessionStorage.getItem(prefix + key) != null;
	};
	Cnds.prototype.OnQuotaExceeded = function ()
	{
		return true;
	};
	Cnds.prototype.CompareKeyText = function (key, text_to_compare, case_sensitive)
	{
		var value = localStorage.getItem(prefix + key) || "";
		if (case_sensitive)
			return value == text_to_compare;
		else
			return cr.equals_nocase(value, text_to_compare);
	};
	Cnds.prototype.CompareKeyNumber = function (key, cmp, x)
	{
		var value = localStorage.getItem(prefix + key) || "";
		return cr.do_cmp(parseFloat(value), cmp, x);
	};
	pluginProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.StoreLocal = function(key, data)
	{
		try {
			localStorage.setItem(prefix + key, data);
		}
		catch (e)
		{
			this.runtime.trigger(cr.plugins_.WebStorage.prototype.cnds.OnQuotaExceeded, this);
		}
	};
	Acts.prototype.StoreSession = function(key,data)
	{
		if (this.runtime.isCocoonJs || !sessionStorage)
		{
			LogSessionNotSupported();
			return;
		}
		try {
			sessionStorage.setItem(prefix + key, data);
		}
		catch (e)
		{
			this.runtime.trigger(cr.plugins_.WebStorage.prototype.cnds.OnQuotaExceeded, this);
		}
	};
	Acts.prototype.RemoveLocal = function(key)
	{
		localStorage.removeItem(prefix + key);
	};
	Acts.prototype.RemoveSession = function(key)
	{
		if (this.runtime.isCocoonJs || !sessionStorage)
		{
			LogSessionNotSupported();
			return;
		}
		sessionStorage.removeItem(prefix + key);
	};
	Acts.prototype.ClearLocal = function()
	{
		if (!is_arcade)
			localStorage.clear();
	};
	Acts.prototype.ClearSession = function()
	{
		if (this.runtime.isCocoonJs || !sessionStorage)
		{
			LogSessionNotSupported();
			return;
		}
		if (!is_arcade)
			sessionStorage.clear();
	};
	Acts.prototype.JSONLoad = function (json_, mode_)
	{
		var d;
		try {
			d = JSON.parse(json_);
		}
		catch(e) { return; }
		if (!d["c2dictionary"])			// presumably not a c2dictionary object
			return;
		var o = d["data"];
		if (mode_ === 0 && !is_arcade)	// 'set' mode: must clear webstorage first
			localStorage.clear();
		var p;
		for (p in o)
		{
			if (o.hasOwnProperty(p))
			{
				try {
					localStorage.setItem(prefix + p, o[p]);
				}
				catch (e)
				{
					this.runtime.trigger(cr.plugins_.WebStorage.prototype.cnds.OnQuotaExceeded, this);
					return;
				}
			}
		}
	};
	pluginProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.LocalValue = function(ret,key)
	{
		ret.set_string(localStorage.getItem(prefix + key) || "");
	};
	Exps.prototype.SessionValue = function(ret,key)
	{
		if (this.runtime.isCocoonJs || !sessionStorage)
		{
			LogSessionNotSupported();
			ret.set_string("");
			return;
		}
		ret.set_string(sessionStorage.getItem(prefix + key) || "");
	};
	Exps.prototype.LocalCount = function(ret)
	{
		ret.set_int(is_arcade ? 0 : localStorage.length);
	};
	Exps.prototype.SessionCount = function(ret)
	{
		if (this.runtime.isCocoonJs || !sessionStorage)
		{
			LogSessionNotSupported();
			ret.set_int(0);
			return;
		}
		ret.set_int(is_arcade ? 0 : sessionStorage.length);
	};
	Exps.prototype.LocalAt = function(ret,n)
	{
		if (is_arcade)
			ret.set_string("");
		else
			ret.set_string(localStorage.getItem(localStorage.key(n)) || "");
	};
	Exps.prototype.SessionAt = function(ret,n)
	{
		if (this.runtime.isCocoonJs || !sessionStorage)
		{
			LogSessionNotSupported();
			ret.set_string("");
			return;
		}
		if (is_arcade)
			ret.set_string("");
		else
			ret.set_string(sessionStorage.getItem(sessionStorage.key(n)) || "");
	};
	Exps.prototype.LocalKeyAt = function(ret,n)
	{
		if (is_arcade)
			ret.set_string("");
		else
			ret.set_string(localStorage.key(n) || "");
	};
	Exps.prototype.SessionKeyAt = function(ret,n)
	{
		if (this.runtime.isCocoonJs || !sessionStorage)
		{
			LogSessionNotSupported();
			ret.set_string("");
			return;
		}
		if (is_arcade)
			ret.set_string("");
		else
			ret.set_string(sessionStorage.key(n) || "");
	};
	Exps.prototype.AsJSON = function (ret)
	{
		var o = {}, i, len, k;
		for (i = 0, len = localStorage.length; i < len; i++)
		{
			k = localStorage.key(i);
			if (is_arcade)
			{
				if (k.substr(0, prefix.length) === prefix)
				{
					o[k.substr(prefix.length)] = localStorage.getItem(k);
				}
			}
			else
				o[k] = localStorage.getItem(k);
		}
		ret.set_string(JSON.stringify({
			"c2dictionary": true,
			"data": o
		}));
	};
	pluginProto.exps = new Exps();
}());
;
;
cr.plugins_.gamepad = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var pluginProto = cr.plugins_.gamepad.prototype;
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	typeProto.onCreate = function()
	{
	};
	var isSupported = !!(navigator["getGamepads"] || navigator["webkitGetGamepads"] || navigator["mozGetGamepads"] || navigator["gamepads"] || navigator["webkitGamepads"] || navigator["MozGamepads"]);
	var gamepadRuntime = null;
	var gamepadInstance = null;
	var controllers = new Array(16);
	var osToken = "";
	var browserToken = "";
	var axisOffset = 16;
	var curCtrlMap = null;
	var ctrlmap = {};
	ctrlmap["windows"] = {};
	ctrlmap["windows"]["firefox"] = {};
	function doControllerMapping(index, isAxis, buttonmap, axismap)
	{
		if (isAxis)
		{
			if (index >= axismap.length)
				return -1;			// unknown axis
			if (cr.is_number(axismap[index]))
				return axismap[index] + axisOffset;
			else
			{
				return axismap[index];	// returning array
			}
		}
		else
		{
			if (index >= buttonmap.length)
				return -1;			// unknown button
			return buttonmap[index];
		}
	};
	var win_ff_xbox360_buttons = [0, 1, 2, 3, 4, 5, 8, 9, 10, 11];
	var win_ff_xbox360_axes    = [0, 1, [7, 6], 2, 3, [14, 15], [12, 13]];
	ctrlmap["windows"]["firefox"]["xbox360"] = function (index, isAxis)
	{
		return doControllerMapping(index, isAxis, win_ff_xbox360_buttons, win_ff_xbox360_axes);
	};
	var win_ff_lda_buttons = [2, 0, 1, 3, 4, 6, 5, 7, 8, 9];
	var win_ff_lda_axes    = [0, 1, 2, 3, [14, 15], [12, 13]];
	ctrlmap["windows"]["firefox"]["logitechdualaction"] = function (index, isAxis)
	{
		return doControllerMapping(index, isAxis, win_ff_lda_buttons, win_ff_lda_axes);
	};
	function defaultMap(index, isAxis)
	{
		if (isAxis)
		{
			if (index >= 4)
				return -1;		// unknown axis
			return index + axisOffset;
		}
		else
		{
			if (index >= 16)
				return -1;		// unknown button
			return index;
		}
	};
	function getMapper(id_)
	{
		if (!curCtrlMap)
			return defaultMap;
		var controllertoken = "";
		var id = id_.toLowerCase();
		if (id.indexOf("xbox 360") > -1)
			controllertoken = "xbox360";
		else if (id.indexOf("logitech dual action") > -1)
			controllertoken = "logitechdualaction";
		var curmap = curCtrlMap[controllertoken];
		return curmap || defaultMap;
	};
	function onConnected(e)
	{
		controllers[e["gamepad"]["index"]] = e["gamepad"];
		gamepadRuntime.trigger(cr.plugins_.gamepad.prototype.cnds.OnGamepadConnected, gamepadInstance);
	};
	function onDisconnected(e)
	{
		gamepadRuntime.trigger(cr.plugins_.gamepad.prototype.cnds.OnGamepadDisconnected, gamepadInstance);
		controllers[e["gamepad"]["index"]] = null;
	};
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
		gamepadRuntime = this.runtime;
		gamepadInstance = this;
	};
	var instanceProto = pluginProto.Instance.prototype;
	instanceProto.onCreate = function()
	{
		this.deadzone = this.properties[0];
		this.lastButton = 0;
		var userAgent = navigator.userAgent;
		osToken = "windows";
		if (/mac/i.test(userAgent))
			osToken = "mac";
		curCtrlMap = ctrlmap[osToken];
		browserToken = "chrome";
		if (/firefox/i.test(userAgent))
			browserToken = "firefox";
		if (curCtrlMap)
			curCtrlMap = curCtrlMap[browserToken];
		window.addEventListener("webkitgamepadconnected", onConnected, false);
		window.addEventListener("webkitgamepaddisconnected", onDisconnected, false);
		window.addEventListener("MozGamepadConnected", onConnected, false);
		window.addEventListener("MozGamepadDisconnected", onDisconnected, false);
		window.addEventListener("gamepadconnected", onConnected, false);
		window.addEventListener("gamepaddisconnected", onDisconnected, false);
		this.runtime.tickMe(this);
		this.activeControllers = [];
	};
	instanceProto.tick = function ()
	{
		this.activeControllers.length = 0;
		var gamepads = null;
		if (navigator["getGamepads"])
			gamepads = navigator["getGamepads"]();
		else if (navigator["webkitGetGamepads"])
			gamepads = navigator["webkitGetGamepads"]();
		else if (navigator["mozGetGamepads"])
			gamepads = navigator["mozGetGamepads"]();
		else
			gamepads = navigator["gamepads"] || navigator["webkitGamepads"] || navigator["MozGamepads"] || controllers;
		if (!gamepads)
			return;
		var i, len, j, lenj, mapfunc, index, value;
		for (i = 0, len = gamepads.length; i < len; i++)
		{
			var pad = gamepads[i];
			if (!pad)
				continue;
			if (!pad.c2state)
			{
				pad.c2state = new Array(20);
				pad.c2oldstate = new Array(20);
				for (j = 0; j < 20; j++)
					pad.c2oldstate[j] = 0;
			}
			else
			{
				for (j = 0; j < 20; j++)
					pad.c2oldstate[j] = pad.c2state[j];
			}
			mapfunc = getMapper(pad.id);
			for (j = 0, lenj = pad["buttons"].length; j < lenj; j++)
			{
				if (typeof pad["buttons"][j]["value"] !== "undefined")
					value = pad["buttons"][j]["value"];
				else
					value = pad["buttons"][j];
				index = mapfunc(j, false, value);
				if (index >= 0 && index < 20)
				{
					pad.c2state[index] = value * 100;
					if (pad.c2state[index] >= 50 && pad.c2oldstate[index] < 50)
						this.lastButton = index;
				}
			}
			for (j = 0, lenj = pad["axes"].length; j < lenj; j++)
			{
				value = pad["axes"][j];
				index = mapfunc(j, true, value);
				if (cr.is_number(index))
				{
					if (index >= 0 && index < 20)
						pad.c2state[index] = value * 100;
				}
				else
				{
					pad.c2state[index[0]] = 0;
					pad.c2state[index[1]] = 0;
					if (value <= 0)
						pad.c2state[index[0]] = Math.abs(value * 100);
					else
						pad.c2state[index[1]] = Math.abs(value * 100);
				}
			}
			this.activeControllers.push(pad);
		}
	};
	instanceProto.saveToJSON = function ()
	{
		return { "lastButton": this.lastButton };
	};
	instanceProto.loadFromJSON = function (o)
	{
		this.lastButton = o["lastButton"];
	};
	function Cnds() {};
	Cnds.prototype.SupportsGamepad = function ()
	{
		return isSupported;
	};
	Cnds.prototype.OnGamepadConnected = function ()
	{
		return true;
	};
	Cnds.prototype.OnGamepadDisconnected = function ()
	{
		return true;
	};
	Cnds.prototype.IsButtonDown = function (gamepad, button)
	{
		gamepad = Math.floor(gamepad);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
			return false;
		var pad = this.activeControllers[gamepad];
		if (!pad.c2state)
			return false;
		var ret = pad.c2state[button] >= 50;
		if (ret)
			this.lastButton = button;
		return ret;
	};
	Cnds.prototype.OnButtonDown = function (gamepad, button)
	{
		gamepad = Math.floor(gamepad);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
			return false;
		var pad = this.activeControllers[gamepad];
		if (!pad.c2state)
			return false;
		var ret = pad.c2state[button] >= 50 && pad.c2oldstate[button] < 50;
		if (ret)
			this.lastButton = button;
		return ret;
	};
	Cnds.prototype.OnButtonUp = function (gamepad, button)
	{
		gamepad = Math.floor(gamepad);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
			return false;
		var pad = this.activeControllers[gamepad];
		if (!pad.c2state)
			return false;
		var ret = pad.c2state[button] < 50 && pad.c2oldstate[button] >= 50;
		if (ret)
			this.lastButton = button;
		return ret;
	};
	Cnds.prototype.HasGamepads = function ()
	{
		return this.activeControllers.length > 0;
	};
	Cnds.prototype.CompareAxis = function (gamepad, axis, comparison, value)
	{
		gamepad = Math.floor(gamepad);
		axis = Math.floor(axis);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
			return false;
		var pad = this.activeControllers[gamepad];
		if (!pad.c2state)
			return false;
		var axisvalue = pad.c2state[axis + axisOffset];
		var othervalue = 0;
		if (axis % 2 === 0)										// is X axis
			othervalue = pad.c2state[axis + axisOffset + 1];	// get next axis (Y)
		else
			othervalue = pad.c2state[axis + axisOffset - 1];	// get previous axis (X)
		if (Math.sqrt(axisvalue * axisvalue + othervalue * othervalue) <= this.deadzone)
			axisvalue = 0;
		return cr.do_cmp(axisvalue, comparison, value);
	};
	Cnds.prototype.OnAnyButtonDown = function (gamepad)
	{
		gamepad = Math.floor(gamepad);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
			return false;
		var pad = this.activeControllers[gamepad];
		if (!pad.c2state)
			return false;
		var i, len;
		for (i = 0, len = pad.c2state.length; i < len; i++)
		{
			if (pad.c2state[i] >= 50 && pad.c2oldstate[i] < 50)
			{
				this.lastButton = i;
				return true;
			}
		}
		return false;
	};
	Cnds.prototype.OnAnyButtonUp = function (gamepad)
	{
		gamepad = Math.floor(gamepad);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
			return false;
		var pad = this.activeControllers[gamepad];
		if (!pad.c2state)
			return false;
		var i, len;
		for (i = 0, len = pad.c2state.length; i < len; i++)
		{
			if (pad.c2state[i] < 50 && pad.c2oldstate[i] >= 50)
			{
				this.lastButton = i;
				return true;
			}
		}
		return false;
	};
	Cnds.prototype.IsButtonIndexDown = function (gamepad, button)
	{
		gamepad = Math.floor(gamepad);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
			return false;
		var pad = this.activeControllers[gamepad];
		if (!pad.c2state)
			return false;
		button = Math.floor(button);
		if (button < 0 || button >= pad.c2state.length)
			return false;
		var ret = pad.c2state[button] >= 50;
		if (ret)
			this.lastButton = button;
		return ret;
	};
	Cnds.prototype.OnButtonIndexDown = function (gamepad, button)
	{
		gamepad = Math.floor(gamepad);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
			return false;
		var pad = this.activeControllers[gamepad];
		if (!pad.c2state)
			return false;
		button = Math.floor(button);
		if (button < 0 || button >= pad.c2state.length)
			return false;
		var ret = pad.c2state[button] >= 50 && pad.c2oldstate[button] < 50;
		if (ret)
			this.lastButton = button;
		return ret;
	};
	Cnds.prototype.OnButtonIndexUp = function (gamepad, button)
	{
		gamepad = Math.floor(gamepad);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
			return false;
		var pad = this.activeControllers[gamepad];
		if (!pad.c2state)
			return false;
		button = Math.floor(button);
		if (button < 0 || button >= pad.c2state.length)
			return false;
		var ret = pad.c2state[button] < 50 && pad.c2oldstate[button] >= 50;
		if (ret)
			this.lastButton = button;
		return ret;
	};
	pluginProto.cnds = new Cnds();
	function Acts() {};
	pluginProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.GamepadCount = function (ret)
	{
		ret.set_int(this.activeControllers.length);
	};
	Exps.prototype.GamepadID = function (ret, index)
	{
		if (index < 0 || index >= this.activeControllers.length)
		{
			ret.set_string("");
			return;
		}
		ret.set_string(this.activeControllers[index].id);
	};
	Exps.prototype.GamepadAxes = function (ret, index)
	{
		if (index < 0 || index >= this.activeControllers.length)
		{
			ret.set_string("");
			return;
		}
		var axes = this.activeControllers[index]["axes"];
		var str = "";
		var i, len;
		for (i = 0, len = axes.length; i < len; i++)
		{
			str += "Axis " + i + ": " + Math.round(axes[i] * 100) + "\n";
		}
		ret.set_string(str);
	};
	Exps.prototype.GamepadButtons = function (ret, index)
	{
		if (index < 0 || index >= this.activeControllers.length)
		{
			ret.set_string("");
			return;
		}
		var buttons = this.activeControllers[index]["buttons"];
		var str = "";
		var i, len, value;
		for (i = 0, len = buttons.length; i < len; i++)
		{
			if (typeof buttons[i]["value"] !== "undefined")
				value = buttons[i]["value"];
			else
				value = buttons[i];
			str += "Button " + i + ": " + Math.round(value * 100) + "\n";
		}
		ret.set_string(str);
	};
	Exps.prototype.RawButton = function (ret, gamepad, index)
	{
		gamepad = Math.floor(gamepad);
		index = Math.floor(index);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
		{
			ret.set_float(0);
			return;
		}
		var state = this.activeControllers[gamepad]["buttons"];
		if (!state || index < 0 || index >= state.length)
		{
			ret.set_float(0);
			return;
		}
		if (typeof state[index]["value"] !== "undefined")
			ret.set_float(state[index]["value"]);
		else
			ret.set_float(state[index]);
	};
	Exps.prototype.RawAxis = function (ret, gamepad, index)
	{
		gamepad = Math.floor(gamepad);
		index = Math.floor(index);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
		{
			ret.set_float(0);
			return;
		}
		var state = this.activeControllers[gamepad]["axes"];
		if (!state || index < 0 || index >= state.length)
		{
			ret.set_float(0);
			return;
		}
		ret.set_float(state[index]);
	};
	Exps.prototype.RawButtonCount = function (ret, gamepad)
	{
		gamepad = Math.floor(gamepad);
		index = Math.floor(index);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
		{
			ret.set_int(0);
			return;
		}
		ret.set_int(this.activeControllers[gamepad]["buttons"].length);
	};
	Exps.prototype.RawAxisCount = function (ret, gamepad)
	{
		gamepad = Math.floor(gamepad);
		index = Math.floor(index);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
		{
			ret.set_int(0);
			return;
		}
		ret.set_int(this.activeControllers[gamepad]["axes"].length);
	};
	Exps.prototype.Button = function (ret, gamepad, index)
	{
		gamepad = Math.floor(gamepad);
		index = Math.floor(index);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
		{
			ret.set_float(0);
			return;
		}
		var state = this.activeControllers[gamepad].c2state;
		if (!state || index < 0 || index >= axisOffset)
		{
			ret.set_float(0);
			return;
		}
		ret.set_float(state[index]);
	};
	Exps.prototype.Axis = function (ret, gamepad, index)
	{
		gamepad = Math.floor(gamepad);
		index = Math.floor(index);
		if (gamepad < 0 || gamepad >= this.activeControllers.length)
		{
			ret.set_float(0);
			return;
		}
		var state = this.activeControllers[gamepad].c2state;
		if (!state || index < 0 || index >= 4)
		{
			ret.set_float(0);
			return;
		}
		var value = state[index + axisOffset];
		var othervalue = 0;
		if (index % 2 === 0)								// is X axis
			othervalue = state[index + axisOffset + 1];		// get next axis (Y)
		else
			othervalue = state[index + axisOffset - 1];		// get previous axis (X)
		if (Math.sqrt(value * value + othervalue * othervalue) <= this.deadzone)
			value = 0;
		ret.set_float(value);
	};
	Exps.prototype.LastButton = function (ret)
	{
		ret.set_int(this.lastButton);
	};
	pluginProto.exps = new Exps();
}());
;
;
cr.plugins_.windowsphone = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var pluginProto = cr.plugins_.windowsphone.prototype;
	pluginProto.Type = function(plugin)
	{
		this.plugin = plugin;
		this.runtime = plugin.runtime;
	};
	var typeProto = pluginProto.Type.prototype;
	typeProto.onCreate = function()
	{
	};
	window.windowsPhoneRuntime = null;
	window.windowsPhoneInst = null;
	pluginProto.Instance = function(type)
	{
		this.type = type;
		this.runtime = type.runtime;
	};
	var instanceProto = pluginProto.Instance.prototype;
	window["tombstoned"] = false;
	window["isTrial"] = false;
	window["deviceMusicPlaying"] = false;
	instanceProto.onCreate = function()
	{
		window.windowsPhoneRuntime = this.runtime;
		window.windowsPhoneInst = this;
		this.isWindowsPhone = window['C2IsWinPhone8'];
		this.isTrial = (this.properties[0] !== 0);
		this.IAPProducts = {};
		var self = this;
		if (this.isWindowsPhone) {
			setTimeout(function(){
				window["external"]["notify"]("checkLicense," + self.isTrial);
				window["external"]["notify"]("isTombstoned");
				window["external"]["notify"]("gameLoaded");
			},0);
		}
	};
	instanceProto.draw = function(ctx)
	{
	};
	instanceProto.drawGL = function (glw)
	{
	};
	window["wp_call_OnBack"] = function ()
	{
		window.windowsPhoneRuntime.trigger(cr.plugins_.windowsphone.prototype.cnds.OnBack, window.windowsPhoneInst);
	}
	window["wp_call_IAPPurchaseSuccess"] = function (productid_)
	{
		self.IAPProducts[productid_]["Purchased"] = "True";
		window.windowsPhoneRuntime.trigger(cr.plugins_.windowsphone.prototype.cnds.IAPPurchaseSuccess, window.windowsPhoneInst);
	}
	window["wp_call_IAPPurchaseFail"] = function ()
	{
		window.windowsPhoneRuntime.trigger(cr.plugins_.windowsphone.prototype.cnds.IAPPurchaseFail, window.windowsPhoneInst);
	}
	window["wp_call_OnStoreListing"] = function (productsJSON_)
	{
		var productsJSONRemap = {};
		for (var i in productsJSON_) {
			productsJSONRemap[productsJSON_[i]["Key"]] = productsJSON_[i]["Value"];
		}
		self.IAPProducts = productsJSONRemap;
		window.windowsPhoneRuntime.trigger(cr.plugins_.windowsphone.prototype.cnds.OnStoreListing, window.windowsPhoneInst);
	}
	function Cnds() {};
	Cnds.prototype.IsWindowsPhone = function ()
	{
		if (this.isWindowsPhone) {
			return true;
		} else {
			return false;
		}
	};
	Cnds.prototype.OnBack = function ()
	{
		return true;
	};
	Cnds.prototype.IsTombstoned = function ()
	{
		if (window["tombstoned"]) {
			window["tombstoned"] = false;
			return true;
		} else {
			return false;
		}
	};
	Cnds.prototype.IsTrial = function ()
	{
		return window["isTrial"];
	};
	Cnds.prototype.IAPPurchaseSuccess = function ()
	{
		return true;
	};
	Cnds.prototype.IAPPurchaseFail = function ()
	{
		return true;
	};
	Cnds.prototype.HasProduct = function (productid_)
	{
		try {
			if (self.IAPProducts[productid_]["Purchased"] === "True") {
				return true;
			} else {
				return false;
			}
		} catch(e) {
			return false;
		}
	};
	Cnds.prototype.OnStoreListing = function ()
	{
		return true;
	};
	Cnds.prototype.IsDeviceMusicPlaying = function ()
	{
		return window["deviceMusicPlaying"];
	};
	pluginProto.cnds = new Cnds();
	window.run_action = function (action_)
	{
		if (window['C2IsWinPhone8'])
			setTimeout(function(){
				window["external"]["notify"](action_);
			},0);
	}
	function Acts() {};
	Acts.prototype.QuitApp = function ()
	{
		window.run_action("quitApp")
	};
	Acts.prototype.VibrateWP = function (duration_)
	{
		window.run_action("vibrate, " + duration_)
	};
	Acts.prototype.FlippedTileUpdate = function (title_, backTitle_, backContent_, wideBackContent_, count_, smallBackgroundImage_, backgroundImage_, backBackgroundImage_, wideBackgroundImage_, wideBackBackgroundImage_)
	{
		window.run_action(
			"flippedTileUpdate, " +
			title_ + ", " +
			backTitle_ + ", " +
			backContent_ + ", " +
			wideBackContent_ + ", " +
			count_ + ", " +
			smallBackgroundImage_ + ", " +
			backgroundImage_ + ", " +
			backBackgroundImage_ + ", " +
			wideBackgroundImage_ + ", " +
			wideBackBackgroundImage_
		)
	};
	Acts.prototype.PlayWPSound = function (fileName_, loop_, volume_, tag_)
	{
		window.run_action("playSound, " + fileName_ + ", " + loop_ + ", " + volume_ + ", " + tag_)
	};
	Acts.prototype.PlayWPMusic = function (fileName_, loop_, volume_)
	{
		window.run_action("playMusic, " + fileName_ + ", " + loop_ + ", " + volume_)
	};
	Acts.prototype.StopSound = function (tag_)
	{
		window.run_action("stopSound, " + tag_)
	};
	Acts.prototype.StopWPMusic = function ()
	{
		window.run_action("stopMusic")
	};
	/* Purchases */
	Acts.prototype.RequestTrialStatus = function ()
	{
		window.run_action("requestTrialStatus")
	};
	Acts.prototype.PurchaseApp = function ()
	{
		window.run_action("purchaseApp")
	};
	Acts.prototype.PurchaseProduct = function (productID_)
	{
		window.run_action("purchaseProduct," + productID_)
	};
	Acts.prototype.RequestStoreListing = function ()
	{
		window.run_action("requestStoreListing")
	};
	/* Tombstoning */
	Acts.prototype.RequestTombstoneStatus = function ()
	{
		window.run_action("requestTombstoneStatus")
	};
	/* Rating */
	Acts.prototype.RateApp = function ()
	{
		window.run_action("rateApp")
	};
	/* Launch Marketplace Details */
	Acts.prototype.LaunchMarketplaceDetails = function (appID_)
	{
		window.run_action("launchMarketplaceDetails," + appID_)
	};
	pluginProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.ProductName = function (ret, productId_)
	{
		if (this.isWindowsPhone && self.IAPProducts[productId_])
		{
			ret.set_string(self.IAPProducts[productId_]["Name"]);
		}
		else
			ret.set_string("");
	};
	Exps.prototype.ProductDescription = function (ret, productId_)
	{
		if (this.isWindowsPhone && self.IAPProducts[productId_])
		{
			ret.set_string(self.IAPProducts[productId_]["Description"]);
		}
		else
			ret.set_string("");
	};
	Exps.prototype.ProductFormattedPrice = function (ret, productId_)
	{
		if (this.isWindowsPhone && self.IAPProducts[productId_])
		{
			ret.set_string(self.IAPProducts[productId_]["FormattedPrice"]);
		}
		else
			ret.set_string("");
	};
	Exps.prototype.ProductTag = function (ret, productId_)
	{
		if (this.isWindowsPhone && self.IAPProducts[productId_])
		{
			ret.set_string(self.IAPProducts[productId_]["Tag"]);
		}
		else
			ret.set_string("");
	};
	pluginProto.exps = new Exps();
}());
;
;
cr.behaviors.Bullet = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var behaviorProto = cr.behaviors.Bullet.prototype;
	behaviorProto.Type = function(behavior, objtype)
	{
		this.behavior = behavior;
		this.objtype = objtype;
		this.runtime = behavior.runtime;
	};
	var behtypeProto = behaviorProto.Type.prototype;
	behtypeProto.onCreate = function()
	{
	};
	behaviorProto.Instance = function(type, inst)
	{
		this.type = type;
		this.behavior = type.behavior;
		this.inst = inst;				// associated object instance to modify
		this.runtime = type.runtime;
	};
	var behinstProto = behaviorProto.Instance.prototype;
	behinstProto.onCreate = function()
	{
		var speed = this.properties[0];
		this.acc = this.properties[1];
		this.g = this.properties[2];
		this.bounceOffSolid = (this.properties[3] !== 0);
		this.setAngle = (this.properties[4] !== 0);
		this.dx = Math.cos(this.inst.angle) * speed;
		this.dy = Math.sin(this.inst.angle) * speed;
		this.lastx = this.inst.x;
		this.lasty = this.inst.y;
		this.lastKnownAngle = this.inst.angle;
		this.travelled = 0;
		this.enabled = (this.properties[5] !== 0);
	};
	behinstProto.saveToJSON = function ()
	{
		return {
			"acc": this.acc,
			"g": this.g,
			"dx": this.dx,
			"dy": this.dy,
			"lx": this.lastx,
			"ly": this.lasty,
			"lka": this.lastKnownAngle,
			"t": this.travelled,
			"e": this.enabled
		};
	};
	behinstProto.loadFromJSON = function (o)
	{
		this.acc = o["acc"];
		this.g = o["g"];
		this.dx = o["dx"];
		this.dy = o["dy"];
		this.lastx = o["lx"];
		this.lasty = o["ly"];
		this.lastKnownAngle = o["lka"];
		this.travelled = o["t"];
		this.enabled = o["e"];
	};
	behinstProto.tick = function ()
	{
		if (!this.enabled)
			return;
		var dt = this.runtime.getDt(this.inst);
		var s, a;
		var bounceSolid, bounceAngle;
		if (this.inst.angle !== this.lastKnownAngle)
		{
			if (this.setAngle)
			{
				s = cr.distanceTo(0, 0, this.dx, this.dy);
				this.dx = Math.cos(this.inst.angle) * s;
				this.dy = Math.sin(this.inst.angle) * s;
			}
			this.lastKnownAngle = this.inst.angle;
		}
		if (this.acc !== 0)
		{
			s = cr.distanceTo(0, 0, this.dx, this.dy);
			if (this.dx === 0 && this.dy === 0)
				a = this.inst.angle;
			else
				a = cr.angleTo(0, 0, this.dx, this.dy);
			s += this.acc * dt;
			if (s < 0)
				s = 0;
			this.dx = Math.cos(a) * s;
			this.dy = Math.sin(a) * s;
		}
		if (this.g !== 0)
			this.dy += this.g * dt;
		this.lastx = this.inst.x;
		this.lasty = this.inst.y;
		if (this.dx !== 0 || this.dy !== 0)
		{
			this.inst.x += this.dx * dt;
			this.inst.y += this.dy * dt;
			this.travelled += cr.distanceTo(0, 0, this.dx * dt, this.dy * dt)
			if (this.setAngle)
			{
				this.inst.angle = cr.angleTo(0, 0, this.dx, this.dy);
				this.inst.set_bbox_changed();
				this.lastKnownAngle = this.inst.angle;
			}
			this.inst.set_bbox_changed();
			if (this.bounceOffSolid)
			{
				bounceSolid = this.runtime.testOverlapSolid(this.inst);
				if (bounceSolid)
				{
					this.runtime.registerCollision(this.inst, bounceSolid);
					s = cr.distanceTo(0, 0, this.dx, this.dy);
					bounceAngle = this.runtime.calculateSolidBounceAngle(this.inst, this.lastx, this.lasty);
					this.dx = Math.cos(bounceAngle) * s;
					this.dy = Math.sin(bounceAngle) * s;
					this.inst.x += this.dx * dt;			// move out for one tick since the object can't have spent a tick in the solid
					this.inst.y += this.dy * dt;
					this.inst.set_bbox_changed();
					if (this.setAngle)
					{
						this.inst.angle = bounceAngle;
						this.lastKnownAngle = bounceAngle;
						this.inst.set_bbox_changed();
					}
					if (!this.runtime.pushOutSolid(this.inst, this.dx / s, this.dy / s, Math.max(s * 2.5 * dt, 30)))
						this.runtime.pushOutSolidNearest(this.inst, 100);
				}
			}
		}
	};
	function Cnds() {};
	Cnds.prototype.CompareSpeed = function (cmp, s)
	{
		return cr.do_cmp(cr.distanceTo(0, 0, this.dx, this.dy), cmp, s);
	};
	Cnds.prototype.CompareTravelled = function (cmp, d)
	{
		return cr.do_cmp(this.travelled, cmp, d);
	};
	behaviorProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.SetSpeed = function (s)
	{
		var a = cr.angleTo(0, 0, this.dx, this.dy);
		this.dx = Math.cos(a) * s;
		this.dy = Math.sin(a) * s;
	};
	Acts.prototype.SetAcceleration = function (a)
	{
		this.acc = a;
	};
	Acts.prototype.SetGravity = function (g)
	{
		this.g = g;
	};
	Acts.prototype.SetAngleOfMotion = function (a)
	{
		a = cr.to_radians(a);
		var s = cr.distanceTo(0, 0, this.dx, this.dy)
		this.dx = Math.cos(a) * s;
		this.dy = Math.sin(a) * s;
	};
	Acts.prototype.Bounce = function (objtype)
	{
		if (!objtype)
			return;
		var otherinst = objtype.getFirstPicked(this.inst);
		if (!otherinst)
			return;
		var dt = this.runtime.getDt(this.inst);
		var s = cr.distanceTo(0, 0, this.dx, this.dy);
		var bounceAngle = this.runtime.calculateSolidBounceAngle(this.inst, this.lastx, this.lasty, otherinst);
		this.dx = Math.cos(bounceAngle) * s;
		this.dy = Math.sin(bounceAngle) * s;
		this.inst.x += this.dx * dt;			// move out for one tick since the object can't have spent a tick in the solid
		this.inst.y += this.dy * dt;
		this.inst.set_bbox_changed();
		if (this.setAngle)
		{
			this.inst.angle = bounceAngle;
			this.lastKnownAngle = bounceAngle;
			this.inst.set_bbox_changed();
		}
		if (this.bounceOffSolid)
		{
			if (!this.runtime.pushOutSolid(this.inst, this.dx / s, this.dy / s, Math.max(s * 2.5 * dt, 30)))
				this.runtime.pushOutSolidNearest(this.inst, 100);
		}
		else
		{
			this.runtime.pushOut(this.inst, this.dx / s, this.dy / s, Math.max(s * 2.5 * dt, 30), otherinst)
		}
	};
	Acts.prototype.SetEnabled = function (en)
	{
		this.enabled = (en === 1);
	};
	behaviorProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.Speed = function (ret)
	{
		var s = cr.distanceTo(0, 0, this.dx, this.dy);
		s = cr.round6dp(s);
		ret.set_float(s);
	};
	Exps.prototype.Acceleration = function (ret)
	{
		ret.set_float(this.acc);
	};
	Exps.prototype.AngleOfMotion = function (ret)
	{
		ret.set_float(cr.to_degrees(cr.angleTo(0, 0, this.dx, this.dy)));
	};
	Exps.prototype.DistanceTravelled = function (ret)
	{
		ret.set_float(this.travelled);
	};
	behaviorProto.exps = new Exps();
}());
;
;
cr.behaviors.Fade = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var behaviorProto = cr.behaviors.Fade.prototype;
	behaviorProto.Type = function(behavior, objtype)
	{
		this.behavior = behavior;
		this.objtype = objtype;
		this.runtime = behavior.runtime;
	};
	var behtypeProto = behaviorProto.Type.prototype;
	behtypeProto.onCreate = function()
	{
	};
	behaviorProto.Instance = function(type, inst)
	{
		this.type = type;
		this.behavior = type.behavior;
		this.inst = inst;				// associated object instance to modify
		this.runtime = type.runtime;
	};
	var behinstProto = behaviorProto.Instance.prototype;
	behinstProto.onCreate = function()
	{
		var active_at_start = this.properties[0] === 1;
		this.fadeInTime = this.properties[1];
		this.waitTime = this.properties[2];
		this.fadeOutTime = this.properties[3];
		this.destroy = this.properties[4];			// 0 = no, 1 = after fade out
		this.stage = active_at_start ? 0 : 3;		// 0 = fade in, 1 = wait, 2 = fade out, 3 = done
		if (this.recycled)
			this.stageTime.reset();
		else
			this.stageTime = new cr.KahanAdder();
		this.maxOpacity = (this.inst.opacity ? this.inst.opacity : 1.0);
		if (active_at_start)
		{
			if (this.fadeInTime === 0)
			{
				this.stage = 1;
				if (this.waitTime === 0)
					this.stage = 2;
			}
			else
			{
				this.inst.opacity = 0;
				this.runtime.redraw = true;
			}
		}
	};
	behinstProto.saveToJSON = function ()
	{
		return {
			"fit": this.fadeInTime,
			"wt": this.waitTime,
			"fot": this.fadeOutTime,
			"s": this.stage,
			"st": this.stageTime.sum,
			"mo": this.maxOpacity,
		};
	};
	behinstProto.loadFromJSON = function (o)
	{
		this.fadeInTime = o["fit"];
		this.waitTime = o["wt"];
		this.fadeOutTime = o["fot"];
		this.stage = o["s"];
		this.stageTime.reset();
		this.stageTime.sum = o["st"];
		this.maxOpacity = o["mo"];
	};
	behinstProto.tick = function ()
	{
		this.stageTime.add(this.runtime.getDt(this.inst));
		if (this.stage === 0)
		{
			this.inst.opacity = (this.stageTime.sum / this.fadeInTime) * this.maxOpacity;
			this.runtime.redraw = true;
			if (this.inst.opacity >= this.maxOpacity)
			{
				this.inst.opacity = this.maxOpacity;
				this.stage = 1;	// wait stage
				this.stageTime.reset();
			}
		}
		if (this.stage === 1)
		{
			if (this.stageTime.sum >= this.waitTime)
			{
				this.stage = 2;	// fade out stage
				this.stageTime.reset();
			}
		}
		if (this.stage === 2)
		{
			if (this.fadeOutTime !== 0)
			{
				this.inst.opacity = this.maxOpacity - ((this.stageTime.sum / this.fadeOutTime) * this.maxOpacity);
				this.runtime.redraw = true;
				if (this.inst.opacity < 0)
				{
					this.inst.opacity = 0;
					this.stage = 3;	// done
					this.stageTime.reset();
					this.runtime.trigger(cr.behaviors.Fade.prototype.cnds.OnFadeOutEnd, this.inst);
					if (this.destroy === 1)
						this.runtime.DestroyInstance(this.inst);
				}
			}
		}
	};
	behinstProto.doStart = function ()
	{
		this.stage = 0;
		this.stageTime.reset();
		if (this.fadeInTime === 0)
		{
			this.stage = 1;
			if (this.waitTime === 0)
				this.stage = 2;
		}
		else
		{
			this.inst.opacity = 0;
			this.runtime.redraw = true;
		}
	};
	function Cnds() {};
	Cnds.prototype.OnFadeOutEnd = function ()
	{
		return true;
	};
	behaviorProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.StartFade = function ()
	{
		if (this.stage === 3)
			this.doStart();
	};
	Acts.prototype.RestartFade = function ()
	{
		this.doStart();
	};
	behaviorProto.acts = new Acts();
}());
;
;
cr.behaviors.Platform = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var behaviorProto = cr.behaviors.Platform.prototype;
	behaviorProto.Type = function(behavior, objtype)
	{
		this.behavior = behavior;
		this.objtype = objtype;
		this.runtime = behavior.runtime;
	};
	var behtypeProto = behaviorProto.Type.prototype;
	behtypeProto.onCreate = function()
	{
	};
	var ANIMMODE_STOPPED = 0;
	var ANIMMODE_MOVING = 1;
	var ANIMMODE_JUMPING = 2;
	var ANIMMODE_FALLING = 3;
	behaviorProto.Instance = function(type, inst)
	{
		this.type = type;
		this.behavior = type.behavior;
		this.inst = inst;				// associated object instance to modify
		this.runtime = type.runtime;
		this.leftkey = false;
		this.rightkey = false;
		this.jumpkey = false;
		this.jumped = false;			// prevent bunnyhopping
		this.ignoreInput = false;
		this.simleft = false;
		this.simright = false;
		this.simjump = false;
		this.lastFloorObject = null;
		this.loadFloorObject = -1;
		this.lastFloorX = 0;
		this.lastFloorY = 0;
		this.floorIsJumpthru = false;
		this.animMode = ANIMMODE_STOPPED;
		this.fallthrough = 0;			// fall through jump-thru.  >0 to disable, lasts a few ticks
		this.firstTick = true;
		this.dx = 0;
		this.dy = 0;
	};
	var behinstProto = behaviorProto.Instance.prototype;
	behinstProto.updateGravity = function()
	{
		this.downx = Math.cos(this.ga);
		this.downy = Math.sin(this.ga);
		this.rightx = Math.cos(this.ga - Math.PI / 2);
		this.righty = Math.sin(this.ga - Math.PI / 2);
		this.downx = cr.round6dp(this.downx);
		this.downy = cr.round6dp(this.downy);
		this.rightx = cr.round6dp(this.rightx);
		this.righty = cr.round6dp(this.righty);
		this.g1 = this.g;
		if (this.g < 0)
		{
			this.downx *= -1;
			this.downy *= -1;
			this.g = Math.abs(this.g);
		}
	};
	behinstProto.onCreate = function()
	{
		this.maxspeed = this.properties[0];
		this.acc = this.properties[1];
		this.dec = this.properties[2];
		this.jumpStrength = this.properties[3];
		this.g = this.properties[4];
		this.g1 = this.g;
		this.maxFall = this.properties[5];
		this.defaultControls = (this.properties[6] === 1);	// 0=no, 1=yes
		this.enabled = (this.properties[7] !== 0);
		this.wasOnFloor = false;
		this.wasOverJumpthru = this.runtime.testOverlapJumpThru(this.inst);
		this.ga = cr.to_radians(90);
		this.updateGravity();
		var self = this;
		if (this.defaultControls && !this.runtime.isDomFree)
		{
			jQuery(document).keydown(function(info) {
						self.onKeyDown(info);
					});
			jQuery(document).keyup(function(info) {
						self.onKeyUp(info);
					});
		}
		if (!this.recycled)
		{
			this.myDestroyCallback = function(inst) {
										self.onInstanceDestroyed(inst);
									};
		}
		this.runtime.addDestroyCallback(this.myDestroyCallback);
	};
	behinstProto.saveToJSON = function ()
	{
		return {
			"ii": this.ignoreInput,
			"lfx": this.lastFloorX,
			"lfy": this.lastFloorY,
			"lfo": (this.lastFloorObject ? this.lastFloorObject.uid : -1),
			"am": this.animMode,
			"en": this.enabled,
			"fall": this.fallthrough,
			"ft": this.firstTick,
			"dx": this.dx,
			"dy": this.dy,
			"ms": this.maxspeed,
			"acc": this.acc,
			"dec": this.dec,
			"js": this.jumpStrength,
			"g": this.g,
			"g1": this.g1,
			"mf": this.maxFall,
			"wof": this.wasOnFloor,
			"woj": this.wasOverJumpthru,
			"ga": this.ga
		};
	};
	behinstProto.loadFromJSON = function (o)
	{
		this.ignoreInput = o["ii"];
		this.lastFloorX = o["lfx"];
		this.lastFloorY = o["lfy"];
		this.loadFloorObject = o["lfo"];
		this.animMode = o["am"];
		this.enabled = o["en"];
		this.fallthrough = o["fall"];
		this.firstTick = o["ft"];
		this.dx = o["dx"];
		this.dy = o["dy"];
		this.maxspeed = o["ms"];
		this.acc = o["acc"];
		this.dec = o["dec"];
		this.jumpStrength = o["js"];
		this.g = o["g"];
		this.g1 = o["g1"];
		this.maxFall = o["mf"];
		this.wasOnFloor = o["wof"];
		this.wasOverJumpthru = o["woj"];
		this.ga = o["ga"];
		this.leftkey = false;
		this.rightkey = false;
		this.jumpkey = false;
		this.jumped = false;
		this.simleft = false;
		this.simright = false;
		this.simjump = false;
		this.updateGravity();
	};
	behinstProto.afterLoad = function ()
	{
		if (this.loadFloorObject === -1)
			this.lastFloorObject = null;
		else
			this.lastFloorObject = this.runtime.getObjectByUID(this.loadFloorObject);
	};
	behinstProto.onInstanceDestroyed = function (inst)
	{
		if (this.lastFloorObject == inst)
			this.lastFloorObject = null;
	};
	behinstProto.onDestroy = function ()
	{
		this.lastFloorObject = null;
		this.runtime.removeDestroyCallback(this.myDestroyCallback);
	};
	behinstProto.onKeyDown = function (info)
	{
		switch (info.which) {
		case 38:	// up
			info.preventDefault();
			this.jumpkey = true;
			break;
		case 37:	// left
			info.preventDefault();
			this.leftkey = true;
			break;
		case 39:	// right
			info.preventDefault();
			this.rightkey = true;
			break;
		}
	};
	behinstProto.onKeyUp = function (info)
	{
		switch (info.which) {
		case 38:	// up
			info.preventDefault();
			this.jumpkey = false;
			this.jumped = false;
			break;
		case 37:	// left
			info.preventDefault();
			this.leftkey = false;
			break;
		case 39:	// right
			info.preventDefault();
			this.rightkey = false;
			break;
		}
	};
	behinstProto.getGDir = function ()
	{
		if (this.g < 0)
			return -1;
		else
			return 1;
	};
	behinstProto.isOnFloor = function ()
	{
		var ret = null;
		var ret2 = null;
		var i, len, j;
		var oldx = this.inst.x;
		var oldy = this.inst.y;
		this.inst.x += this.downx;
		this.inst.y += this.downy;
		this.inst.set_bbox_changed();
		if (this.lastFloorObject && this.runtime.testOverlap(this.inst, this.lastFloorObject))
		{
			this.inst.x = oldx;
			this.inst.y = oldy;
			this.inst.set_bbox_changed();
			return this.lastFloorObject;
		}
		else
		{
			ret = this.runtime.testOverlapSolid(this.inst);
			if (!ret && this.fallthrough === 0)
				ret2 = this.runtime.testOverlapJumpThru(this.inst, true);
			this.inst.x = oldx;
			this.inst.y = oldy;
			this.inst.set_bbox_changed();
			if (ret)		// was overlapping solid
			{
				if (this.runtime.testOverlap(this.inst, ret))
					return null;
				else
				{
					this.floorIsJumpthru = false;
					return ret;
				}
			}
			if (ret2 && ret2.length)
			{
				for (i = 0, j = 0, len = ret2.length; i < len; i++)
				{
					ret2[j] = ret2[i];
					if (!this.runtime.testOverlap(this.inst, ret2[i]))
						j++;
				}
				if (j >= 1)
				{
					this.floorIsJumpthru = true;
					return ret2[0];
				}
			}
			return null;
		}
	};
	behinstProto.tick = function ()
	{
	};
	behinstProto.posttick = function ()
	{
		var dt = this.runtime.getDt(this.inst);
		var mx, my, obstacle, mag, allover, i, len, j, oldx, oldy;
		if (!this.jumpkey && !this.simjump)
			this.jumped = false;
		var left = this.leftkey || this.simleft;
		var right = this.rightkey || this.simright;
		var jump = (this.jumpkey || this.simjump) && !this.jumped;
		this.simleft = false;
		this.simright = false;
		this.simjump = false;
		if (!this.enabled)
			return;
		if (this.ignoreInput)
		{
			left = false;
			right = false;
			jump = false;
		}
		var lastFloor = this.lastFloorObject;
		var floor_moved = false;
		if (this.firstTick)
		{
			if (this.runtime.testOverlapSolid(this.inst) || this.runtime.testOverlapJumpThru(this.inst))
			{
				this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy, 4, true);
			}
			this.firstTick = false;
		}
		if (lastFloor && this.dy === 0 && (lastFloor.y !== this.lastFloorY || lastFloor.x !== this.lastFloorX))
		{
			mx = (lastFloor.x - this.lastFloorX);
			my = (lastFloor.y - this.lastFloorY);
			this.inst.x += mx;
			this.inst.y += my;
			this.inst.set_bbox_changed();
			this.lastFloorX = lastFloor.x;
			this.lastFloorY = lastFloor.y;
			floor_moved = true;
			if (this.runtime.testOverlapSolid(this.inst))
			{
				this.runtime.pushOutSolid(this.inst, -mx, -my, Math.sqrt(mx * mx + my * my) * 2.5);
			}
		}
		var floor_ = this.isOnFloor();
		var collobj = this.runtime.testOverlapSolid(this.inst);
		if (collobj)
		{
			if (this.runtime.pushOutSolidNearest(this.inst, Math.max(this.inst.width, this.inst.height) / 2))
				this.runtime.registerCollision(this.inst, collobj);
			else
				return;
		}
		if (floor_)
		{
			if (this.dy > 0)
			{
				if (!this.wasOnFloor)
				{
					this.runtime.pushInFractional(this.inst, -this.downx, -this.downy, floor_, 16);
					this.wasOnFloor = true;
				}
				this.dy = 0;
			}
			if (lastFloor != floor_)
			{
				this.lastFloorObject = floor_;
				this.lastFloorX = floor_.x;
				this.lastFloorY = floor_.y;
				this.runtime.registerCollision(this.inst, floor_);
			}
			else if (floor_moved)
			{
				collobj = this.runtime.testOverlapSolid(this.inst);
				if (collobj)
				{
					this.runtime.registerCollision(this.inst, collobj);
					if (mx !== 0)
					{
						if (mx > 0)
							this.runtime.pushOutSolid(this.inst, -this.rightx, -this.righty);
						else
							this.runtime.pushOutSolid(this.inst, this.rightx, this.righty);
					}
					this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy);
				}
			}
			if (jump)
			{
				oldx = this.inst.x;
				oldy = this.inst.y;
				this.inst.x -= this.downx;
				this.inst.y -= this.downy;
				this.inst.set_bbox_changed();
				if (!this.runtime.testOverlapSolid(this.inst))
				{
					this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnJump, this.inst);
					this.animMode = ANIMMODE_JUMPING;
					this.dy = -this.jumpStrength;
					this.jumped = true;
				}
				else
					jump = false;
				this.inst.x = oldx;
				this.inst.y = oldy;
				this.inst.set_bbox_changed();
			}
		}
		else
		{
			this.lastFloorObject = null;
			this.dy += this.g * dt;
			if (this.dy > this.maxFall)
				this.dy = this.maxFall;
			if (jump)
				this.jumped = true;
		}
		this.wasOnFloor = !!floor_;
		if (left == right)	// both up or both down
		{
			if (this.dx < 0)
			{
				this.dx += this.dec * dt;
				if (this.dx > 0)
					this.dx = 0;
			}
			else if (this.dx > 0)
			{
				this.dx -= this.dec * dt;
				if (this.dx < 0)
					this.dx = 0;
			}
		}
		if (left && !right)
		{
			if (this.dx > 0)
				this.dx -= (this.acc + this.dec) * dt;
			else
				this.dx -= this.acc * dt;
		}
		if (right && !left)
		{
			if (this.dx < 0)
				this.dx += (this.acc + this.dec) * dt;
			else
				this.dx += this.acc * dt;
		}
		if (this.dx > this.maxspeed)
			this.dx = this.maxspeed;
		else if (this.dx < -this.maxspeed)
			this.dx = -this.maxspeed;
		var landed = false;
		if (this.dx !== 0)
		{
			oldx = this.inst.x;
			oldy = this.inst.y;
			mx = this.dx * dt * this.rightx;
			my = this.dx * dt * this.righty;
			this.inst.x += this.rightx * (this.dx > 1 ? 1 : -1) - this.downx;
			this.inst.y += this.righty * (this.dx > 1 ? 1 : -1) - this.downy;
			this.inst.set_bbox_changed();
			var is_jumpthru = false;
			var slope_too_steep = this.runtime.testOverlapSolid(this.inst);
			/*
			if (!slope_too_steep && floor_)
			{
				slope_too_steep = this.runtime.testOverlapJumpThru(this.inst);
				is_jumpthru = true;
				if (slope_too_steep)
				{
					this.inst.x = oldx;
					this.inst.y = oldy;
					this.inst.set_bbox_changed();
					if (this.runtime.testOverlap(this.inst, slope_too_steep))
					{
						slope_too_steep = null;
						is_jumpthru = false;
					}
				}
			}
			*/
			this.inst.x = oldx + mx;
			this.inst.y = oldy + my;
			this.inst.set_bbox_changed();
			obstacle = this.runtime.testOverlapSolid(this.inst);
			if (!obstacle && floor_)
			{
				obstacle = this.runtime.testOverlapJumpThru(this.inst);
				if (obstacle)
				{
					this.inst.x = oldx;
					this.inst.y = oldy;
					this.inst.set_bbox_changed();
					if (this.runtime.testOverlap(this.inst, obstacle))
					{
						obstacle = null;
						is_jumpthru = false;
					}
					else
						is_jumpthru = true;
					this.inst.x = oldx + mx;
					this.inst.y = oldy + my;
					this.inst.set_bbox_changed();
				}
			}
			if (obstacle)
			{
				var push_dist = Math.abs(this.dx * dt) + 2;
				if (slope_too_steep || !this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy, push_dist, is_jumpthru, obstacle))
				{
					this.runtime.registerCollision(this.inst, obstacle);
					push_dist = Math.max(Math.abs(this.dx * dt * 2.5), 30);
					if (!this.runtime.pushOutSolid(this.inst, this.rightx * (this.dx < 0 ? 1 : -1), this.righty * (this.dx < 0 ? 1 : -1), push_dist, false))
					{
						this.inst.x = oldx;
						this.inst.y = oldy;
						this.inst.set_bbox_changed();
					}
					else if (floor_ && !is_jumpthru && !this.floorIsJumpthru)
					{
						oldx = this.inst.x;
						oldy = this.inst.y;
						this.inst.x += this.downx;
						this.inst.y += this.downy;
						if (this.runtime.testOverlapSolid(this.inst))
						{
							if (!this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy, 3, false))
							{
								this.inst.x = oldx;
								this.inst.y = oldy;
								this.inst.set_bbox_changed();
							}
						}
						else
						{
							this.inst.x = oldx;
							this.inst.y = oldy;
							this.inst.set_bbox_changed();
						}
					}
					if (!is_jumpthru)
						this.dx = 0;	// stop
				}
				else if (!slope_too_steep && Math.abs(this.dy) < 15)
				{
					this.dy = 0;
					if (!floor_)
						landed = true;
				}
			}
			else
			{
				var newfloor = this.isOnFloor();
				if (floor_ && !newfloor)
				{
					mag = Math.ceil(Math.abs(this.dx * dt)) + 2;
					oldx = this.inst.x;
					oldy = this.inst.y;
					this.inst.x += this.downx * mag;
					this.inst.y += this.downy * mag;
					this.inst.set_bbox_changed();
					if (this.runtime.testOverlapSolid(this.inst) || this.runtime.testOverlapJumpThru(this.inst))
						this.runtime.pushOutSolid(this.inst, -this.downx, -this.downy, mag + 2, true);
					else
					{
						this.inst.x = oldx;
						this.inst.y = oldy;
						this.inst.set_bbox_changed();
					}
				}
				else if (newfloor && this.dy === 0)
				{
					this.runtime.pushInFractional(this.inst, -this.downx, -this.downy, newfloor, 16);
				}
			}
		}
		if (this.dy !== 0)
		{
			oldx = this.inst.x;
			oldy = this.inst.y;
			this.inst.x += this.dy * dt * this.downx;
			this.inst.y += this.dy * dt * this.downy;
			var newx = this.inst.x;
			var newy = this.inst.y;
			this.inst.set_bbox_changed();
			collobj = this.runtime.testOverlapSolid(this.inst);
			var fell_on_jumpthru = false;
			if (!collobj && (this.dy > 0) && !floor_)
			{
				allover = this.fallthrough > 0 ? null : this.runtime.testOverlapJumpThru(this.inst, true);
				if (allover && allover.length)
				{
					if (this.wasOverJumpthru)
					{
						this.inst.x = oldx;
						this.inst.y = oldy;
						this.inst.set_bbox_changed();
						for (i = 0, j = 0, len = allover.length; i < len; i++)
						{
							allover[j] = allover[i];
							if (!this.runtime.testOverlap(this.inst, allover[i]))
								j++;
						}
						allover.length = j;
						this.inst.x = newx;
						this.inst.y = newy;
						this.inst.set_bbox_changed();
					}
					if (allover.length >= 1)
						collobj = allover[0];
				}
				fell_on_jumpthru = !!collobj;
			}
			if (collobj)
			{
				this.runtime.registerCollision(this.inst, collobj);
				var push_dist = (fell_on_jumpthru ? Math.abs(this.dy * dt * 2.5 + 10) : Math.max(Math.abs(this.dy * dt * 2.5 + 10), 30));
				if (!this.runtime.pushOutSolid(this.inst, this.downx * (this.dy < 0 ? 1 : -1), this.downy * (this.dy < 0 ? 1 : -1), push_dist, fell_on_jumpthru, collobj))
				{
					this.inst.x = oldx;
					this.inst.y = oldy;
					this.inst.set_bbox_changed();
					this.wasOnFloor = true;		// prevent adjustment for unexpected floor landings
					if (!fell_on_jumpthru)
						this.dy = 0;	// stop
				}
				else
				{
					this.lastFloorObject = collobj;
					this.lastFloorX = collobj.x;
					this.lastFloorY = collobj.y;
					this.floorIsJumpthru = fell_on_jumpthru;
					if (fell_on_jumpthru)
						landed = true;
					this.dy = 0;	// stop
				}
			}
		}
		if (this.animMode !== ANIMMODE_FALLING && this.dy > 0 && !floor_)
		{
			this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnFall, this.inst);
			this.animMode = ANIMMODE_FALLING;
		}
		if (floor_ || landed)
		{
			if (this.animMode === ANIMMODE_FALLING || landed || (jump && this.dy === 0))
			{
				this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnLand, this.inst);
				if (this.dx === 0 && this.dy === 0)
					this.animMode = ANIMMODE_STOPPED;
				else
					this.animMode = ANIMMODE_MOVING;
			}
			else
			{
				if (this.animMode !== ANIMMODE_STOPPED && this.dx === 0 && this.dy === 0)
				{
					this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnStop, this.inst);
					this.animMode = ANIMMODE_STOPPED;
				}
				if (this.animMode !== ANIMMODE_MOVING && (this.dx !== 0 || this.dy !== 0) && !jump)
				{
					this.runtime.trigger(cr.behaviors.Platform.prototype.cnds.OnMove, this.inst);
					this.animMode = ANIMMODE_MOVING;
				}
			}
		}
		if (this.fallthrough > 0)
			this.fallthrough--;
		this.wasOverJumpthru = this.runtime.testOverlapJumpThru(this.inst);
	};
	function Cnds() {};
	Cnds.prototype.IsMoving = function ()
	{
		return this.dx !== 0 || this.dy !== 0;
	};
	Cnds.prototype.CompareSpeed = function (cmp, s)
	{
		var speed = Math.sqrt(this.dx * this.dx + this.dy * this.dy);
		return cr.do_cmp(speed, cmp, s);
	};
	Cnds.prototype.IsOnFloor = function ()
	{
		if (this.dy !== 0)
			return false;
		var ret = null;
		var ret2 = null;
		var i, len, j;
		var oldx = this.inst.x;
		var oldy = this.inst.y;
		this.inst.x += this.downx;
		this.inst.y += this.downy;
		this.inst.set_bbox_changed();
		ret = this.runtime.testOverlapSolid(this.inst);
		if (!ret && this.fallthrough === 0)
			ret2 = this.runtime.testOverlapJumpThru(this.inst, true);
		this.inst.x = oldx;
		this.inst.y = oldy;
		this.inst.set_bbox_changed();
		if (ret)		// was overlapping solid
		{
			return !this.runtime.testOverlap(this.inst, ret);
		}
		if (ret2 && ret2.length)
		{
			for (i = 0, j = 0, len = ret2.length; i < len; i++)
			{
				ret2[j] = ret2[i];
				if (!this.runtime.testOverlap(this.inst, ret2[i]))
					j++;
			}
			if (j >= 1)
				return true;
		}
		return false;
	};
	Cnds.prototype.IsByWall = function (side)
	{
		var ret = false;
		var oldx = this.inst.x;
		var oldy = this.inst.y;
		this.inst.x -= this.downx * 3;
		this.inst.y -= this.downy * 3;
		this.inst.set_bbox_changed();
		if (this.runtime.testOverlapSolid(this.inst))
		{
			this.inst.x = oldx;
			this.inst.y = oldy;
			this.inst.set_bbox_changed();
			return false;
		}
		if (side === 0)		// left
		{
			this.inst.x -= this.rightx * 2;
			this.inst.y -= this.righty * 2;
		}
		else
		{
			this.inst.x += this.rightx * 2;
			this.inst.y += this.righty * 2;
		}
		this.inst.set_bbox_changed();
		ret = this.runtime.testOverlapSolid(this.inst);
		this.inst.x = oldx;
		this.inst.y = oldy;
		this.inst.set_bbox_changed();
		return ret;
	};
	Cnds.prototype.IsJumping = function ()
	{
		return this.dy < 0;
	};
	Cnds.prototype.IsFalling = function ()
	{
		return this.dy > 0;
	};
	Cnds.prototype.OnJump = function ()
	{
		return true;
	};
	Cnds.prototype.OnFall = function ()
	{
		return true;
	};
	Cnds.prototype.OnStop = function ()
	{
		return true;
	};
	Cnds.prototype.OnMove = function ()
	{
		return true;
	};
	Cnds.prototype.OnLand = function ()
	{
		return true;
	};
	behaviorProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.SetIgnoreInput = function (ignoring)
	{
		this.ignoreInput = ignoring;
	};
	Acts.prototype.SetMaxSpeed = function (maxspeed)
	{
		this.maxspeed = maxspeed;
		if (this.maxspeed < 0)
			this.maxspeed = 0;
	};
	Acts.prototype.SetAcceleration = function (acc)
	{
		this.acc = acc;
		if (this.acc < 0)
			this.acc = 0;
	};
	Acts.prototype.SetDeceleration = function (dec)
	{
		this.dec = dec;
		if (this.dec < 0)
			this.dec = 0;
	};
	Acts.prototype.SetJumpStrength = function (js)
	{
		this.jumpStrength = js;
		if (this.jumpStrength < 0)
			this.jumpStrength = 0;
	};
	Acts.prototype.SetGravity = function (grav)
	{
		if (this.g1 === grav)
			return;		// no change
		this.g = grav;
		this.updateGravity();
		if (this.runtime.testOverlapSolid(this.inst))
		{
			this.runtime.pushOutSolid(this.inst, this.downx, this.downy, 10);
			this.inst.x += this.downx * 2;
			this.inst.y += this.downy * 2;
			this.inst.set_bbox_changed();
		}
		this.lastFloorObject = null;
	};
	Acts.prototype.SetMaxFallSpeed = function (mfs)
	{
		this.maxFall = mfs;
		if (this.maxFall < 0)
			this.maxFall = 0;
	};
	Acts.prototype.SimulateControl = function (ctrl)
	{
		switch (ctrl) {
		case 0:		this.simleft = true;	break;
		case 1:		this.simright = true;	break;
		case 2:		this.simjump = true;	break;
		}
	};
	Acts.prototype.SetVectorX = function (vx)
	{
		this.dx = vx;
	};
	Acts.prototype.SetVectorY = function (vy)
	{
		this.dy = vy;
	};
	Acts.prototype.SetGravityAngle = function (a)
	{
		a = cr.to_radians(a);
		a = cr.clamp_angle(a);
		if (this.ga === a)
			return;		// no change
		this.ga = a;
		this.updateGravity();
		this.lastFloorObject = null;
	};
	Acts.prototype.SetEnabled = function (en)
	{
		if (this.enabled !== (en === 1))
		{
			this.enabled = (en === 1);
			if (!this.enabled)
				this.lastFloorObject = null;
		}
	};
	Acts.prototype.FallThrough = function ()
	{
		var oldx = this.inst.x;
		var oldy = this.inst.y;
		this.inst.x += this.downx;
		this.inst.y += this.downy;
		this.inst.set_bbox_changed();
		var overlaps = this.runtime.testOverlapJumpThru(this.inst, false);
		this.inst.x = oldx;
		this.inst.y = oldy;
		this.inst.set_bbox_changed();
		if (!overlaps)
			return;
		this.fallthrough = 3;			// disable jumpthrus for 3 ticks (1 doesn't do it, 2 does, 3 to be on safe side)
		this.lastFloorObject = null;
	};
	behaviorProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.Speed = function (ret)
	{
		ret.set_float(Math.sqrt(this.dx * this.dx + this.dy * this.dy));
	};
	Exps.prototype.MaxSpeed = function (ret)
	{
		ret.set_float(this.maxspeed);
	};
	Exps.prototype.Acceleration = function (ret)
	{
		ret.set_float(this.acc);
	};
	Exps.prototype.Deceleration = function (ret)
	{
		ret.set_float(this.dec);
	};
	Exps.prototype.JumpStrength = function (ret)
	{
		ret.set_float(this.jumpStrength);
	};
	Exps.prototype.Gravity = function (ret)
	{
		ret.set_float(this.g);
	};
	Exps.prototype.GravityAngle = function (ret)
	{
		ret.set_float(cr.to_degrees(this.ga));
	};
	Exps.prototype.MaxFallSpeed = function (ret)
	{
		ret.set_float(this.maxFall);
	};
	Exps.prototype.MovingAngle = function (ret)
	{
		ret.set_float(cr.to_degrees(Math.atan2(this.dy, this.dx)));
	};
	Exps.prototype.VectorX = function (ret)
	{
		ret.set_float(this.dx);
	};
	Exps.prototype.VectorY = function (ret)
	{
		ret.set_float(this.dy);
	};
	behaviorProto.exps = new Exps();
}());
;
;
cr.behaviors.Sin = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var behaviorProto = cr.behaviors.Sin.prototype;
	behaviorProto.Type = function(behavior, objtype)
	{
		this.behavior = behavior;
		this.objtype = objtype;
		this.runtime = behavior.runtime;
	};
	var behtypeProto = behaviorProto.Type.prototype;
	behtypeProto.onCreate = function()
	{
	};
	behaviorProto.Instance = function(type, inst)
	{
		this.type = type;
		this.behavior = type.behavior;
		this.inst = inst;				// associated object instance to modify
		this.runtime = type.runtime;
		this.i = 0;		// period offset (radians)
	};
	var behinstProto = behaviorProto.Instance.prototype;
	var _2pi = 2 * Math.PI;
	var _pi_2 = Math.PI / 2;
	var _3pi_2 = (3 * Math.PI) / 2;
	behinstProto.onCreate = function()
	{
		this.active = (this.properties[0] === 1);
		this.movement = this.properties[1]; // 0=Horizontal|1=Vertical|2=Size|3=Width|4=Height|5=Angle|6=Opacity|7=Value only
		this.wave = this.properties[2];		// 0=Sine|1=Triangle|2=Sawtooth|3=Reverse sawtooth|4=Square
		this.period = this.properties[3];
		this.period += Math.random() * this.properties[4];								// period random
		if (this.period === 0)
			this.i = 0;
		else
		{
			this.i = (this.properties[5] / this.period) * _2pi;								// period offset
			this.i += ((Math.random() * this.properties[6]) / this.period) * _2pi;			// period offset random
		}
		this.mag = this.properties[7];													// magnitude
		this.mag += Math.random() * this.properties[8];									// magnitude random
		this.initialValue = 0;
		this.initialValue2 = 0;
		this.ratio = 0;
		this.init();
	};
	behinstProto.saveToJSON = function ()
	{
		return {
			"i": this.i,
			"a": this.active,
			"mv": this.movement,
			"w": this.wave,
			"p": this.period,
			"mag": this.mag,
			"iv": this.initialValue,
			"iv2": this.initialValue2,
			"r": this.ratio,
			"lkv": this.lastKnownValue,
			"lkv2": this.lastKnownValue2
		};
	};
	behinstProto.loadFromJSON = function (o)
	{
		this.i = o["i"];
		this.active = o["a"];
		this.movement = o["mv"];
		this.wave = o["w"];
		this.period = o["p"];
		this.mag = o["mag"];
		this.initialValue = o["iv"];
		this.initialValue2 = o["iv2"] || 0;
		this.ratio = o["r"];
		this.lastKnownValue = o["lkv"];
		this.lastKnownValue2 = o["lkv2"] || 0;
	};
	behinstProto.init = function ()
	{
		switch (this.movement) {
		case 0:		// horizontal
			this.initialValue = this.inst.x;
			break;
		case 1:		// vertical
			this.initialValue = this.inst.y;
			break;
		case 2:		// size
			this.initialValue = this.inst.width;
			this.ratio = this.inst.height / this.inst.width;
			break;
		case 3:		// width
			this.initialValue = this.inst.width;
			break;
		case 4:		// height
			this.initialValue = this.inst.height;
			break;
		case 5:		// angle
			this.initialValue = this.inst.angle;
			this.mag = cr.to_radians(this.mag);		// convert magnitude from degrees to radians
			break;
		case 6:		// opacity
			this.initialValue = this.inst.opacity;
			break;
		case 7:
			this.initialValue = 0;
			break;
		case 8:		// forwards/backwards
			this.initialValue = this.inst.x;
			this.initialValue2 = this.inst.y;
			break;
		default:
;
		}
		this.lastKnownValue = this.initialValue;
		this.lastKnownValue2 = this.initialValue2;
	};
	behinstProto.waveFunc = function (x)
	{
		x = x % _2pi;
		switch (this.wave) {
		case 0:		// sine
			return Math.sin(x);
		case 1:		// triangle
			if (x <= _pi_2)
				return x / _pi_2;
			else if (x <= _3pi_2)
				return 1 - (2 * (x - _pi_2) / Math.PI);
			else
				return (x - _3pi_2) / _pi_2 - 1;
		case 2:		// sawtooth
			return 2 * x / _2pi - 1;
		case 3:		// reverse sawtooth
			return -2 * x / _2pi + 1;
		case 4:		// square
			return x < Math.PI ? -1 : 1;
		};
		return 0;
	};
	behinstProto.tick = function ()
	{
		var dt = this.runtime.getDt(this.inst);
		if (!this.active || dt === 0)
			return;
		if (this.period === 0)
			this.i = 0;
		else
		{
			this.i += (dt / this.period) * _2pi;
			this.i = this.i % _2pi;
		}
		switch (this.movement) {
		case 0:		// horizontal
			if (this.inst.x !== this.lastKnownValue)
				this.initialValue += this.inst.x - this.lastKnownValue;
			this.inst.x = this.initialValue + this.waveFunc(this.i) * this.mag;
			this.lastKnownValue = this.inst.x;
			break;
		case 1:		// vertical
			if (this.inst.y !== this.lastKnownValue)
				this.initialValue += this.inst.y - this.lastKnownValue;
			this.inst.y = this.initialValue + this.waveFunc(this.i) * this.mag;
			this.lastKnownValue = this.inst.y;
			break;
		case 2:		// size
			this.inst.width = this.initialValue + this.waveFunc(this.i) * this.mag;
			this.inst.height = this.inst.width * this.ratio;
			break;
		case 3:		// width
			this.inst.width = this.initialValue + this.waveFunc(this.i) * this.mag;
			break;
		case 4:		// height
			this.inst.height = this.initialValue + this.waveFunc(this.i) * this.mag;
			break;
		case 5:		// angle
			if (this.inst.angle !== this.lastKnownValue)
				this.initialValue = cr.clamp_angle(this.initialValue + (this.inst.angle - this.lastKnownValue));
			this.inst.angle = cr.clamp_angle(this.initialValue + this.waveFunc(this.i) * this.mag);
			this.lastKnownValue = this.inst.angle;
			break;
		case 6:		// opacity
			this.inst.opacity = this.initialValue + (this.waveFunc(this.i) * this.mag) / 100;
			if (this.inst.opacity < 0)
				this.inst.opacity = 0;
			else if (this.inst.opacity > 1)
				this.inst.opacity = 1;
			break;
		case 8:		// forwards/backwards
			if (this.inst.x !== this.lastKnownValue)
				this.initialValue += this.inst.x - this.lastKnownValue;
			if (this.inst.y !== this.lastKnownValue2)
				this.initialValue2 += this.inst.y - this.lastKnownValue2;
			this.inst.x = this.initialValue + Math.cos(this.inst.angle) * this.waveFunc(this.i) * this.mag;
			this.inst.y = this.initialValue2 + Math.sin(this.inst.angle) * this.waveFunc(this.i) * this.mag;
			this.lastKnownValue = this.inst.x;
			this.lastKnownValue2 = this.inst.y;
			break;
		}
		this.inst.set_bbox_changed();
	};
	behinstProto.onSpriteFrameChanged = function (prev_frame, next_frame)
	{
		switch (this.movement) {
		case 2:	// size
			this.initialValue *= (next_frame.width / prev_frame.width);
			this.ratio = next_frame.height / next_frame.width;
			break;
		case 3:	// width
			this.initialValue *= (next_frame.width / prev_frame.width);
			break;
		case 4:	// height
			this.initialValue *= (next_frame.height / prev_frame.height);
			break;
		}
	};
	function Cnds() {};
	Cnds.prototype.IsActive = function ()
	{
		return this.active;
	};
	Cnds.prototype.CompareMovement = function (m)
	{
		return this.movement === m;
	};
	Cnds.prototype.ComparePeriod = function (cmp, v)
	{
		return cr.do_cmp(this.period, cmp, v);
	};
	Cnds.prototype.CompareMagnitude = function (cmp, v)
	{
		if (this.movement === 5)
			return cr.do_cmp(this.mag, cmp, cr.to_radians(v));
		else
			return cr.do_cmp(this.mag, cmp, v);
	};
	Cnds.prototype.CompareWave = function (w)
	{
		return this.wave === w;
	};
	behaviorProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.SetActive = function (a)
	{
		this.active = (a === 1);
	};
	Acts.prototype.SetPeriod = function (x)
	{
		this.period = x;
	};
	Acts.prototype.SetMagnitude = function (x)
	{
		this.mag = x;
		if (this.movement === 5)	// angle
			this.mag = cr.to_radians(this.mag);
	};
	Acts.prototype.SetMovement = function (m)
	{
		if (this.movement === 5)
			this.mag = cr.to_degrees(this.mag);
		this.movement = m;
		this.init();
	};
	Acts.prototype.SetWave = function (w)
	{
		this.wave = w;
	};
	behaviorProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.CyclePosition = function (ret)
	{
		ret.set_float(this.i / _2pi);
	};
	Exps.prototype.Period = function (ret)
	{
		ret.set_float(this.period);
	};
	Exps.prototype.Magnitude = function (ret)
	{
		if (this.movement === 5)	// angle
			ret.set_float(cr.to_degrees(this.mag));
		else
			ret.set_float(this.mag);
	};
	Exps.prototype.Value = function (ret)
	{
		ret.set_float(this.waveFunc(this.i) * this.mag);
	};
	behaviorProto.exps = new Exps();
}());
;
;
cr.behaviors.Timer = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var behaviorProto = cr.behaviors.Timer.prototype;
	behaviorProto.Type = function(behavior, objtype)
	{
		this.behavior = behavior;
		this.objtype = objtype;
		this.runtime = behavior.runtime;
	};
	var behtypeProto = behaviorProto.Type.prototype;
	behtypeProto.onCreate = function()
	{
	};
	behaviorProto.Instance = function(type, inst)
	{
		this.type = type;
		this.behavior = type.behavior;
		this.inst = inst;				// associated object instance to modify
		this.runtime = type.runtime;
	};
	var behinstProto = behaviorProto.Instance.prototype;
	behinstProto.onCreate = function()
	{
		this.timers = {};
	};
	behinstProto.onDestroy = function ()
	{
		cr.wipe(this.timers);
	};
	behinstProto.saveToJSON = function ()
	{
		var o = {};
		var p, t;
		for (p in this.timers)
		{
			if (this.timers.hasOwnProperty(p))
			{
				t = this.timers[p];
				o[p] = {
					"c": t.current.sum,
					"t": t.total.sum,
					"d": t.duration,
					"r": t.regular
				};
			}
		}
		return o;
	};
	behinstProto.loadFromJSON = function (o)
	{
		this.timers = {};
		var p;
		for (p in o)
		{
			if (o.hasOwnProperty(p))
			{
				this.timers[p] = {
					current: new cr.KahanAdder(),
					total: new cr.KahanAdder(),
					duration: o[p]["d"],
					regular: o[p]["r"]
				};
				this.timers[p].current.sum = o[p]["c"];
				this.timers[p].total.sum = o[p]["t"];
			}
		}
	};
	behinstProto.tick = function ()
	{
		var dt = this.runtime.getDt(this.inst);
		var p, t;
		for (p in this.timers)
		{
			if (this.timers.hasOwnProperty(p))
			{
				t = this.timers[p];
				t.current.add(dt);
				t.total.add(dt);
			}
		}
	};
	behinstProto.tick2 = function ()
	{
		var p, t;
		for (p in this.timers)
		{
			if (this.timers.hasOwnProperty(p))
			{
				t = this.timers[p];
				if (t.current.sum >= t.duration)
				{
					if (t.regular)
						t.current.sum -= t.duration;
					else
						delete this.timers[p];
				}
			}
		}
	};
	function Cnds() {};
	Cnds.prototype.OnTimer = function (tag_)
	{
		tag_ = tag_.toLowerCase();
		var t = this.timers[tag_];
		if (!t)
			return false;
		return t.current.sum >= t.duration;
	};
	behaviorProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.StartTimer = function (duration_, type_, tag_)
	{
		this.timers[tag_.toLowerCase()] = {
			current: new cr.KahanAdder(),
			total: new cr.KahanAdder(),
			duration: duration_,
			regular: (type_ === 1)
		};
	};
	Acts.prototype.StopTimer = function (tag_)
	{
		tag_ = tag_.toLowerCase();
		if (this.timers.hasOwnProperty(tag_))
			delete this.timers[tag_];
	};
	behaviorProto.acts = new Acts();
	function Exps() {};
	Exps.prototype.CurrentTime = function (ret, tag_)
	{
		var t = this.timers[tag_.toLowerCase()];
		ret.set_float(t ? t.current.sum : 0);
	};
	Exps.prototype.TotalTime = function (ret, tag_)
	{
		var t = this.timers[tag_.toLowerCase()];
		ret.set_float(t ? t.total.sum : 0);
	};
	Exps.prototype.Duration = function (ret, tag_)
	{
		var t = this.timers[tag_.toLowerCase()];
		ret.set_float(t ? t.duration : 0);
	};
	behaviorProto.exps = new Exps();
}());
;
;
cr.behaviors.solid = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var behaviorProto = cr.behaviors.solid.prototype;
	behaviorProto.Type = function(behavior, objtype)
	{
		this.behavior = behavior;
		this.objtype = objtype;
		this.runtime = behavior.runtime;
	};
	var behtypeProto = behaviorProto.Type.prototype;
	behtypeProto.onCreate = function()
	{
	};
	behaviorProto.Instance = function(type, inst)
	{
		this.type = type;
		this.behavior = type.behavior;
		this.inst = inst;				// associated object instance to modify
		this.runtime = type.runtime;
	};
	var behinstProto = behaviorProto.Instance.prototype;
	behinstProto.onCreate = function()
	{
		this.inst.extra.solidEnabled = (this.properties[0] !== 0);
	};
	behinstProto.tick = function ()
	{
	};
	function Cnds() {};
	Cnds.prototype.IsEnabled = function ()
	{
		return this.inst.extra.solidEnabled;
	};
	behaviorProto.cnds = new Cnds();
	function Acts() {};
	Acts.prototype.SetEnabled = function (e)
	{
		this.inst.extra.solidEnabled = !!e;
	};
	behaviorProto.acts = new Acts();
}());
;
;
cr.behaviors.wrap = function(runtime)
{
	this.runtime = runtime;
};
(function ()
{
	var behaviorProto = cr.behaviors.wrap.prototype;
	behaviorProto.Type = function(behavior, objtype)
	{
		this.behavior = behavior;
		this.objtype = objtype;
		this.runtime = behavior.runtime;
	};
	var behtypeProto = behaviorProto.Type.prototype;
	behtypeProto.onCreate = function()
	{
	};
	behaviorProto.Instance = function(type, inst)
	{
		this.type = type;
		this.behavior = type.behavior;
		this.inst = inst;				// associated object instance to modify
		this.runtime = type.runtime;
	};
	var behinstProto = behaviorProto.Instance.prototype;
	behinstProto.onCreate = function()
	{
		this.mode = this.properties[0];		// 0 = wrap to layout, 1 = wrap to viewport
	};
	behinstProto.tick = function ()
	{
		var inst = this.inst;
		inst.update_bbox();
		var bbox = inst.bbox;
		var layer = inst.layer;
		var layout = layer.layout;
		var lbound = 0, rbound = 0, tbound = 0, bbound = 0;
		if (this.mode === 0)
		{
			rbound = layout.width;
			bbound = layout.height;
		}
		else
		{
			lbound = layer.viewLeft;
			rbound = layer.viewRight;
			tbound = layer.viewTop;
			bbound = layer.viewBottom;
		}
		if (bbox.right < lbound)
		{
			inst.x = (rbound - 1) + (inst.x - bbox.left);
			inst.set_bbox_changed();
		}
		else if (bbox.left > rbound)
		{
			inst.x = (lbound + 1) - (bbox.right - inst.x);
			inst.set_bbox_changed();
		}
		else if (bbox.bottom < tbound)
		{
			inst.y = (bbound - 1) + (inst.y - bbox.top);
			inst.set_bbox_changed();
		}
		else if (bbox.top > bbound)
		{
			inst.y = (tbound + 1) - (bbox.bottom - inst.y);
			inst.set_bbox_changed();
		}
	};
}());
cr.getProjectModel = function() { return [
	null,
	"Loader",
	[
	[
		cr.plugins_.windowsphone,
		true,
		false,
		false,
		false,
		false,
		false,
		false,
		false,
		false
	]
,	[
		cr.plugins_.Touch,
		true,
		false,
		false,
		false,
		false,
		false,
		false,
		false,
		false
	]
,	[
		cr.plugins_.Tilemap,
		false,
		true,
		true,
		true,
		false,
		true,
		true,
		true,
		true
	]
,	[
		cr.plugins_.TiledBg,
		false,
		true,
		true,
		true,
		true,
		true,
		true,
		true,
		true
	]
,	[
		cr.plugins_.WebStorage,
		true,
		false,
		false,
		false,
		false,
		false,
		false,
		false,
		false
	]
,	[
		cr.plugins_.Arr,
		false,
		false,
		false,
		false,
		false,
		false,
		false,
		false,
		false
	]
,	[
		cr.plugins_.Audio,
		true,
		false,
		false,
		false,
		false,
		false,
		false,
		false,
		false
	]
,	[
		cr.plugins_.Browser,
		true,
		false,
		false,
		false,
		false,
		false,
		false,
		false,
		false
	]
,	[
		cr.plugins_.Function,
		true,
		false,
		false,
		false,
		false,
		false,
		false,
		false,
		false
	]
,	[
		cr.plugins_.gamepad,
		true,
		false,
		false,
		false,
		false,
		false,
		false,
		false,
		false
	]
,	[
		cr.plugins_.Keyboard,
		true,
		false,
		false,
		false,
		false,
		false,
		false,
		false,
		false
	]
,	[
		cr.plugins_.Mouse,
		true,
		false,
		false,
		false,
		false,
		false,
		false,
		false,
		false
	]
,	[
		cr.plugins_.Sprite,
		false,
		true,
		true,
		true,
		true,
		true,
		true,
		true,
		false
	]
,	[
		cr.plugins_.Spritefont2,
		false,
		true,
		true,
		true,
		true,
		true,
		true,
		true,
		true
	]
,	[
		cr.plugins_.Text,
		false,
		true,
		true,
		true,
		true,
		true,
		true,
		true,
		false
	]
	],
	[
	[
		"t0",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			105914445205943,
			[
				["images/pixelnomlogo-sheet0.png", 263, 0, 0, 225, 50, 1, 0.5022222399711609, 0.5,[],[-0.4400000274181366,-0.2199999988079071,-0.004444241523742676,-0.2400000095367432,0.3822217583656311,0.01999998092651367,0.3822217583656311,0,0.3511107563972473,-0.1599999964237213,-0.004444241523742676,-0.1599999964237213,-0.4800000488758087,0.3999999761581421,-0.4800000488758087,0],0]
			]
			]
		],
		[
		],
		false,
		true,
		6831087889586812,
		[],
		null
	]
,	[
		"t1",
		cr.plugins_.Text,
		false,
		[],
		0,
		0,
		null,
		null,
		[
		],
		false,
		true,
		7350223358937019,
		[],
		null
	]
,	[
		"t2",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			3794953892216846,
			[
				["images/pixelnomsp-sheet0.png", 175, 0, 0, 82, 82, 1, 0.5, 0.5,[],[-0.2804880142211914,-0.2804880142211914,0,-0.5,0.5,-0.5,0.5,0.5,-0.5,0.5,-0.5,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		8426366403145569,
		[],
		null
	]
,	[
		"t3",
		cr.plugins_.Spritefont2,
		false,
		[],
		0,
		0,
		["images/playtext.png", 1427, 3],
		null,
		[
		],
		false,
		false,
		4522141857508938,
		[],
		null
	]
,	[
		"t4",
		cr.plugins_.Sprite,
		false,
		[],
		1,
		0,
		null,
		[
			[
			"Right",
			4,
			true,
			1,
			0,
			false,
			8480990787955759,
			[
				["images/splashhero-sheet0.png", 228, 0, 0, 48, 48, 1, 0.5, 1,[],[],0],
				["images/splashhero-sheet1.png", 276, 0, 0, 48, 48, 1, 0.5, 1,[],[],0]
			]
			]
		],
		[
		[
			"Platform",
			cr.behaviors.Platform,
			7711089889217032
		]
		],
		false,
		false,
		4910248747001864,
		[],
		null
	]
,	[
		"t5",
		cr.plugins_.Sprite,
		false,
		[],
		2,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			9523197355505189,
			[
				["images/whitecloud-sheet0.png", 403, 0, 0, 64, 48, 1, 0.5, 0.5,[],[-0.328125,-0.2708330154418945,0,-0.4375,0.28125,-0.2083329856395721,0.46875,0,0.359375,0.3125,0,0.4583330154418945,-0.359375,0.3125,-0.46875,0],0]
			]
			]
		],
		[
		[
			"Bullet",
			cr.behaviors.Bullet,
			9714119068936485
		]
,		[
			"Wrap",
			cr.behaviors.wrap,
			1555409839736319
		]
		],
		false,
		false,
		3169499360187431,
		[],
		null
	]
,	[
		"t6",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			6002817230845844,
			[
				["images/fullscreen-sheet0.png", 145, 0, 0, 32, 32, 1, 0.5, 0.5,[],[-0.375,-0.375,0.375,-0.375,0.375,0.375,-0.375,0.375],3]
			]
			]
		],
		[
		],
		false,
		false,
		6697962157329876,
		[],
		null
	]
,	[
		"t7",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			4706851085610935,
			[
				["images/cleardata-sheet0.png", 178, 0, 0, 32, 32, 1, 0.5, 0.5,[],[-0.4375,-0.4375,0,-0.4375,0.375,-0.375,0.4374999403953552,0,0.4374999403953552,0.4374999403953552,-0.4375,0.4374999403953552],0]
			]
			]
		],
		[
		],
		false,
		false,
		6015754701443367,
		[],
		null
	]
,	[
		"t8",
		cr.plugins_.Spritefont2,
		false,
		[],
		0,
		0,
		["images/playtext.png", 1427, 3],
		null,
		[
		],
		false,
		false,
		2228291607410283,
		[],
		null
	]
,	[
		"t9",
		cr.plugins_.Spritefont2,
		false,
		[],
		0,
		0,
		["images/helpcontenttext.png", 853, 3],
		null,
		[
		],
		false,
		false,
		1755716795088587,
		[],
		null
	]
,	[
		"t10",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			704192883201872,
			[
				["images/touchhand-sheet0.png", 206, 0, 0, 32, 46, 1, 0.5, 0.5,[],[-0.3125,-0.3695650100708008,0,-0.06521698832511902,-0.0625,-0.1086960136890411,0.25,0,0.375,0.4130430221557617,0,0.5,-0.375,0.4130430221557617,-0.3125,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		8964278717216154,
		[],
		null
	]
,	[
		"t11",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			0,
			false,
			1,
			0,
			false,
			6624187887928998,
			[
				["images/arrowdoubleleft-sheet0.png", 180, 0, 0, 48, 32, 1, 0.5, 0.5,[],[],0],
				["images/arrowdoubleleft-sheet1.png", 180, 0, 0, 48, 32, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		7885227165480301,
		[],
		null
	]
,	[
		"t12",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			3941798411182559,
			[
				["images/pause-sheet0.png", 130, 0, 0, 32, 32, 1, 0.5, 0.5,[],[],3]
			]
			]
		],
		[
		],
		true,
		false,
		1579347578754409,
		[],
		null
	]
,	[
		"t13",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			2147632111756404,
			[
				["images/resume-sheet0.png", 153, 0, 0, 32, 32, 1, 0.5, 0.5,[],[-0.5,-0.5,0.4882810115814209,-0.5,0.5,0.4960939884185791,-0.5,0.5,-0.5,0.0195310115814209],3]
			]
			]
		],
		[
		],
		true,
		false,
		3598103931129149,
		[],
		null
	]
,	[
		"t14",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			630387685664058,
			[
				["images/redo-sheet0.png", 172, 0, 0, 32, 32, 1, 0.5, 0.5,[],[-0.5,-0.5,-0.05468699336051941,-0.49609375,0.5,-0.5,0.5,0.015625,0.5,0.5,-0.0195310115814209,0.5,-0.5,0.5,-0.5,-0.007811993360519409],3]
			]
			]
		],
		[
		],
		true,
		false,
		177037214649907,
		[],
		null
	]
,	[
		"t15",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			6269571437065416,
			[
				["images/exitgame-sheet0.png", 142, 0, 0, 32, 32, 1, 0.5, 0.5,[],[-0.5,-0.5,0.06835901737213135,-0.5,0.5,-0.5,0.5,-0.2304689884185791,0.5,0.3203129768371582,0.5,0.5,-0.296875,0.5,-0.5,0.5],3]
			]
			]
		],
		[
		],
		true,
		false,
		7631714532821488,
		[],
		null
	]
,	[
		"t16",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			2266646994194729,
			[
				["images/ingame_menu_bg-sheet0.png", 105, 0, 0, 200, 56, 1, 0.5, 0.5,[],[],4]
			]
			]
		],
		[
		],
		true,
		false,
		9301376209859173,
		[],
		null
	]
,	[
		"t17",
		cr.plugins_.Spritefont2,
		false,
		[],
		0,
		0,
		["images/helpcontenttext.png", 853, 3],
		null,
		[
		],
		true,
		false,
		300963173886655,
		[],
		null
	]
,	[
		"t18",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			6801959803180913,
			[
				["images/touchleft-sheet0.png", 152, 0, 0, 32, 32, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		true,
		false,
		3746171070271625,
		[],
		null
	]
,	[
		"t19",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			4921078578756055,
			[
				["images/touchleft-sheet0.png", 152, 0, 0, 32, 32, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		true,
		false,
		7093294251983073,
		[],
		null
	]
,	[
		"t20",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			2153733685531395,
			[
				["images/arrowright-sheet0.png", 149, 0, 0, 32, 32, 1, 0.5, 0.5,[],[-0.5,0.02539098262786865,-0.5,-0.5,0.5,-0.498046875,0.5,0.5,-0.5,0.5],3]
			]
			]
		],
		[
		],
		false,
		false,
		4979739515283275,
		[],
		null
	]
,	[
		"t21",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			4892816611990947,
			[
				["images/arrowleft-sheet0.png", 147, 0, 0, 32, 32, 1, 0.5, 0.5,[],[0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5,0.5,0.03125],3]
			]
			]
		],
		[
		],
		false,
		false,
		5708626370220173,
		[],
		null
	]
,	[
		"t22",
		cr.plugins_.Sprite,
		false,
		[9264590186392015],
		0,
		0,
		null,
		[
			[
			"Default",
			0,
			false,
			1,
			0,
			false,
			6157573355653058,
			[
				["images/levelselectitem-sheet0.png", 219, 0, 0, 64, 64, 1, 0.5, 0.5,[],[],0],
				["images/levelselectitem-sheet1.png", 159, 0, 0, 64, 64, 1, 0.5, 0.5,[],[],0],
				["images/levelselectitem-sheet2.png", 159, 0, 0, 64, 64, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		6918771694496164,
		[],
		null
	]
,	[
		"t23",
		cr.plugins_.Spritefont2,
		false,
		[],
		0,
		0,
		["images/helpcontenttext.png", 853, 3],
		null,
		[
		],
		false,
		false,
		4391185662222225,
		[],
		null
	]
,	[
		"t24",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			9140760929729749,
			[
				["images/grassgroundbtmleftcrn-sheet0.png", 130, 0, 0, 24, 16, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		4948205710929272,
		[],
		null
	]
,	[
		"t25",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			7116327145975494,
			[
				["images/grassgroundbtmrightcrn-sheet0.png", 131, 0, 0, 24, 16, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		8849350330092253,
		[],
		null
	]
,	[
		"t26",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			8229684601930649,
			[
				["images/groundleftedgebtmcorner-sheet0.png", 143, 0, 0, 24, 24, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		3393316782295463,
		[],
		null
	]
,	[
		"t27",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			8733989503126273,
			[
				["images/groundrightedgebtmcorner-sheet0.png", 143, 0, 0, 24, 24, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		8529207178573083,
		[],
		null
	]
,	[
		"t28",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			42086161269086,
			[
				["images/wallplantright-sheet0.png", 139, 0, 0, 24, 48, 1, 0.5, 0.5,[],[-0.5,-0.5,0,-0.4166666865348816,0,0,0.3333330154418945,0.4166669845581055,0,0.3333330154418945,-0.5,0.5],0]
			]
			]
		],
		[
		],
		false,
		false,
		9210413637043969,
		[],
		null
	]
,	[
		"t29",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			8711379586746147,
			[
				["images/greenplantcorner-sheet0.png", 128, 0, 0, 24, 24, 1, 0.5, 0.5,[],[0.1666669845581055,0.1666669845581055,0,-0.3333330154418945,0.1666669845581055,-0.1666670143604279,0,0,0.3333330154418945,0.3333330154418945,0,0.3333330154418945,-0.5,0.5,-0.3333330154418945,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		4893218397693133,
		[],
		null
	]
,	[
		"t30",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			1123831265202941,
			[
				["images/greenplantcorner2-sheet0.png", 127, 0, 0, 24, 24, 1, 0.5, 0.5,[],[-0.1666670143604279,-0.1666670143604279,0,-0.3333330154418945,-0.3333330154418945,0.3333330154418945,0.1666669845581055,0,0.5,0.5,0,0.3333330154418945,-0.5,0.5,0,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		2709493300303681,
		[],
		null
	]
,	[
		"t31",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			1956358752698318,
			[
				["images/dirtdoublegrass-sheet0.png", 216, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		6992870078721621,
		[],
		null
	]
,	[
		"t32",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			2834333873260975,
			[
				["images/dirtground48btmgrassedgeleft-sheet0.png", 211, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		9063023661222857,
		[],
		null
	]
,	[
		"t33",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			2287953142778946,
			[
				["images/dirtground48btmgrassedgeright-sheet0.png", 212, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		9540809865597446,
		[],
		null
	]
,	[
		"t34",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			4493474010641647,
			[
				["images/dirtground48doublegrassedgeright-sheet0.png", 219, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		5956197461508701,
		[],
		null
	]
,	[
		"t35",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			1468541183187872,
			[
				["images/dirtground48edgeboth-sheet0.png", 172, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		8895058038353526,
		[],
		null
	]
,	[
		"t36",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			3256679382169521,
			[
				["images/dirtground48edgeright-sheet0.png", 182, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		5669305145291465,
		[],
		null
	]
,	[
		"t37",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			6027168983280291,
			[
				["images/dirtground48topboth-sheet0.png", 206, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		5381732952763558,
		[],
		null
	]
,	[
		"t38",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			7954582135790873,
			[
				["images/dirtground48topgrassedgeleft-sheet0.png", 205, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		978846937700282,
		[],
		null
	]
,	[
		"t39",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			4969409121875718,
			[
				["images/dirtground48topgrassedgeright-sheet0.png", 203, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		7564351291588254,
		[],
		null
	]
,	[
		"t40",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			5619854373963965,
			[
				["images/dirttopgrass-sheet0.png", 204, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		7962365010830507,
		[],
		null
	]
,	[
		"t41",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			9102570336713332,
			[
				["images/dirtnograss-sheet0.png", 183, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		9335734556717498,
		[],
		null
	]
,	[
		"t42",
		cr.plugins_.TiledBg,
		false,
		[],
		1,
		0,
		["images/grassgroundtiled.png", 145, 1],
		null,
		[
		[
			"Solid",
			cr.behaviors.solid,
			9557234241102163
		]
		],
		false,
		false,
		4055036640365804,
		[],
		null
	]
,	[
		"t43",
		cr.plugins_.TiledBg,
		false,
		[],
		1,
		0,
		["images/grassgroundtiled.png", 145, 1],
		null,
		[
		[
			"Solid",
			cr.behaviors.solid,
			6016282986027601
		]
		],
		false,
		false,
		5073383843963063,
		[],
		null
	]
,	[
		"t44",
		cr.plugins_.TiledBg,
		false,
		[],
		1,
		0,
		["images/groundleftedge.png", 140, 1],
		null,
		[
		[
			"Solid",
			cr.behaviors.solid,
			1409683520468557
		]
		],
		false,
		false,
		4193486155669258,
		[],
		null
	]
,	[
		"t45",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			2666508598640097,
			[
				["images/dirtbottomgrass-sheet0.png", 208, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		4644139967259565,
		[],
		null
	]
,	[
		"t46",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			4079292680334193,
			[
				["images/dirtground48doublegrassedgeboth-sheet0.png", 221, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		6222635458104731,
		[],
		null
	]
,	[
		"t47",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			5733998936462287,
			[
				["images/dirtground48doublegrassedgeleft-sheet0.png", 220, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		398475194001467,
		[],
		null
	]
,	[
		"t48",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			3197830235803519,
			[
				["images/dirtground48btmgrassboth-sheet0.png", 214, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		2879498095108143,
		[],
		null
	]
,	[
		"t49",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			1322618064000638,
			[
				["images/dirtground48edgeleft-sheet0.png", 184, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		4450397164304586,
		[],
		null
	]
,	[
		"t50",
		cr.plugins_.Tilemap,
		false,
		[],
		1,
		0,
		["images/ruins.png", 583, 0],
		null,
		[
		[
			"Solid",
			cr.behaviors.solid,
			7148516835349789
		]
		],
		false,
		false,
		6591857408229265,
		[],
		[
			[0.03645829856395721,0.171875,0.9479169845581055,0.1666669994592667,1,1,0,1]
		]
	]
,	[
		"t51",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			9007199171972957,
			[
				["images/brokencolumn-sheet0.png", 208, 0, 0, 48, 48, 1, 0.5, 0.5,[],[-0.3333330154418945,-0.3333330154418945,0,-0.25,0.5,0,0.5,0.5,-0.5,0.5,-0.5,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		2795942962935343,
		[],
		null
	]
,	[
		"t52",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			8486340112212128,
			[
				["images/columnbottom-sheet0.png", 204, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		7446449975520611,
		[],
		null
	]
,	[
		"t53",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			8596068333584759,
			[
				["images/columnmid-sheet0.png", 124, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		3749286810821707,
		[],
		null
	]
,	[
		"t54",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			7769969751240829,
			[
				["images/columntop-sheet0.png", 190, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		7822788087984292,
		[],
		null
	]
,	[
		"t55",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			8329234831035805,
			[
				["images/ruinsbothgrass-sheet0.png", 132, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		1332339123772397,
		[],
		null
	]
,	[
		"t56",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			933281927324385,
			[
				["images/ruinsbothgrassboth-sheet0.png", 135, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		2011240509912504,
		[],
		null
	]
,	[
		"t57",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			8387493578993272,
			[
				["images/ruinsbothgrassleft-sheet0.png", 134, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		1932083175683645,
		[],
		null
	]
,	[
		"t58",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			9297559223223548,
			[
				["images/ruinsbothgrassright-sheet0.png", 133, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		4059333840001308,
		[],
		null
	]
,	[
		"t59",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			1954097092229271,
			[
				["images/ruinsbtmgrass-sheet0.png", 120, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		380138849517027,
		[],
		null
	]
,	[
		"t60",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			2748660389508309,
			[
				["images/ruinsbtmgrassboth-sheet0.png", 124, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		4378047149015146,
		[],
		null
	]
,	[
		"t61",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			9184540701216333,
			[
				["images/ruinsbtmgrassleft-sheet0.png", 124, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		4238331206374832,
		[],
		null
	]
,	[
		"t62",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			9536927367632604,
			[
				["images/ruinsbtmgrassright-sheet0.png", 124, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		2870205106876299,
		[],
		null
	]
,	[
		"t63",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			3428182822282532,
			[
				["images/ruinsplain-sheet0.png", 94, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		5644070851028992,
		[],
		null
	]
,	[
		"t64",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			8655409569011555,
			[
				["images/ruinsplainboth-sheet0.png", 104, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		6447258751773334,
		[],
		null
	]
,	[
		"t65",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			3459387096758825,
			[
				["images/ruinsplainleft-sheet0.png", 103, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		2958949338719399,
		[],
		null
	]
,	[
		"t66",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			5081509303245612,
			[
				["images/ruinsplainright-sheet0.png", 103, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		8663291111252574,
		[],
		null
	]
,	[
		"t67",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			4304801795624749,
			[
				["images/ruinstopgrass-sheet0.png", 123, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		6139576075611993,
		[],
		null
	]
,	[
		"t68",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			8852206205402569,
			[
				["images/ruinstopgrassboth-sheet0.png", 126, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		568377497829204,
		[],
		null
	]
,	[
		"t69",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			4491349646170094,
			[
				["images/ruinstopgrassleft-sheet0.png", 124, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		5601494639394524,
		[],
		null
	]
,	[
		"t70",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			64294385219188,
			[
				["images/ruinstopgrassright-sheet0.png", 125, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		9065706774930152,
		[],
		null
	]
,	[
		"t71",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			3897823289570717,
			[
				["images/lavaplain-sheet0.png", 94, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		548187890777324,
		[],
		null
	]
,	[
		"t72",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			121523039605123,
			[
				["images/lavaplainright-sheet0.png", 164, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		3027843084754203,
		[],
		null
	]
,	[
		"t73",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			6859954997944293,
			[
				["images/lavaplainleft-sheet0.png", 170, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		2948569955208407,
		[],
		null
	]
,	[
		"t74",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			7002705016253092,
			[
				["images/lavagroundbottom-sheet0.png", 199, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		4104558714043304,
		[],
		null
	]
,	[
		"t75",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			8378003201188115,
			[
				["images/lavagroundtop-sheet0.png", 197, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		9280716629833134,
		[],
		null
	]
,	[
		"t76",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			9342472750598495,
			[
				["images/lavabothground-sheet0.png", 250, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		959393371819953,
		[],
		null
	]
,	[
		"t77",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			2711359077372225,
			[
				["images/lavabothgroundboth-sheet0.png", 260, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		8664976686285663,
		[],
		null
	]
,	[
		"t78",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			1718775261956363,
			[
				["images/lavagroundbottomboth-sheet0.png", 244, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		9131424594829441,
		[],
		null
	]
,	[
		"t79",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			48784550659718,
			[
				["images/lavagroundbottomleft-sheet0.png", 223, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		3632549133534488,
		[],
		null
	]
,	[
		"t80",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			5762381619753365,
			[
				["images/lavagroundbottomright-sheet0.png", 223, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		3374712288197285,
		[],
		null
	]
,	[
		"t81",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			7680834378748643,
			[
				["images/lavagroundtopboth-sheet0.png", 248, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		6835598178647818,
		[],
		null
	]
,	[
		"t82",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			4340840239570394,
			[
				["images/lavagroundtopleft-sheet0.png", 225, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		5241268639039406,
		[],
		null
	]
,	[
		"t83",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			1589452480306172,
			[
				["images/lavagroundtopright-sheet0.png", 222, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		9287232827268841,
		[],
		null
	]
,	[
		"t84",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			8335310343638564,
			[
				["images/lavaplainboth-sheet0.png", 224, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		9082020434518593,
		[],
		null
	]
,	[
		"t85",
		cr.plugins_.Sprite,
		false,
		[],
		2,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			3177829982931594,
			[
				["images/lavamovingplatform-sheet0.png", 191, 0, 0, 48, 24, 1, 0.5, 0.5,[],[-0.4166666865348816,-0.3333330154418945,0.4166669845581055,-0.3333330154418945,0.5,0,0.4166669845581055,0.3333330154418945,-0.4166666865348816,0.3333330154418945,-0.5,0],0]
			]
			]
		],
		[
		[
			"Solid",
			cr.behaviors.solid,
			3671387218136567
		]
,		[
			"Sine",
			cr.behaviors.Sin,
			2985261859498155
		]
		],
		false,
		false,
		6128284795422108,
		[],
		null
	]
,	[
		"t86",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			1580368442537659,
			[
				["images/lavabothgroundleft-sheet0.png", 256, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		6267444545168313,
		[],
		null
	]
,	[
		"t87",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			6643000836861234,
			[
				["images/lavabothgroundright-sheet0.png", 254, 0, 0, 48, 48, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		1588051288462276,
		[],
		null
	]
,	[
		"t88",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			4236470171723023,
			[
				["images/lavaleftcorner-sheet0.png", 146, 0, 0, 24, 24, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		8762902333495902,
		[],
		null
	]
,	[
		"t89",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			1614584478144274,
			[
				["images/lavarightcorner-sheet0.png", 147, 0, 0, 24, 24, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		906623566116582,
		[],
		null
	]
,	[
		"t90",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			4191826273538236,
			[
				["images/lavavein-sheet0.png", 140, 0, 0, 24, 24, 1, 0.5, 0.5,[],[-0.08333298563957214,-0.08333298563957214,0,-0.25,0.1666669845581055,-0.1666670143604279,-0.08333298563957214,0,0,0,0,0.3333330154418945,-0.5,0.5,-0.3333330154418945,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		7825479588187951,
		[],
		null
	]
,	[
		"t91",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			2406451123120565,
			[
				["images/grassground-sheet0.png", 146, 0, 0, 16, 16, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		3120120898122117,
		[],
		null
	]
,	[
		"t92",
		cr.plugins_.Sprite,
		false,
		[],
		1,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			801247738723972,
			[
				["images/roofground-sheet0.png", 152, 0, 0, 16, 16, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		[
			"Solid",
			cr.behaviors.solid,
			1268447837429793
		]
		],
		true,
		false,
		4465466348149832,
		[],
		null
	]
,	[
		"t93",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			4209753352624986,
			[
				["images/pixel-sheet0.png", 153, 0, 0, 24, 24, 1, 0.5, 0.5,[],[-0.4166666865348816,-0.4166666865348816,0,-0.5,0.4166669845581055,-0.4166666865348816,0.5,0,0.4166669845581055,0.4166669845581055,0,0.5,-0.4166666865348816,0.4166669845581055,-0.5,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		5357848771240986,
		[],
		null
	]
,	[
		"t94",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			8,
			true,
			1,
			0,
			false,
			3495205771817597,
			[
				["images/portal-sheet0.png", 254, 1, 1, 24, 24, 1, 0.5, 0.5,[],[],0],
				["images/portal-sheet0.png", 254, 26, 1, 24, 24, 1, 0.5, 0.5,[],[],0],
				["images/portal-sheet0.png", 254, 1, 26, 24, 24, 1, 0.5, 0.5,[],[],0],
				["images/portal-sheet0.png", 254, 26, 26, 24, 24, 1, 0.5, 0.5,[],[],0],
				["images/portal-sheet1.png", 259, 1, 1, 24, 24, 1, 0.5, 0.5,[],[],0],
				["images/portal-sheet1.png", 259, 26, 1, 24, 24, 1, 0.5, 0.5,[],[],0],
				["images/portal-sheet1.png", 259, 1, 26, 24, 24, 1, 0.5, 0.5,[],[],0],
				["images/portal-sheet1.png", 259, 26, 26, 24, 24, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		1730400193666269,
		[],
		null
	]
,	[
		"t95",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			455437753698889,
			[
				["images/portal1entr-sheet0.png", 204, 0, 0, 16, 16, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		7493897226568006,
		[],
		null
	]
,	[
		"t96",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			3357228514394346,
			[
				["images/portal1entr-sheet0.png", 204, 0, 0, 16, 16, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		4599915497113551,
		[],
		null
	]
,	[
		"t97",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			6275801858142896,
			[
				["images/portal2entr-sheet0.png", 189, 0, 0, 16, 16, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		5953826727610756,
		[],
		null
	]
,	[
		"t98",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			8766862780851773,
			[
				["images/portal2entr-sheet0.png", 189, 0, 0, 16, 16, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		8259381596228825,
		[],
		null
	]
,	[
		"t99",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			3581887568749636,
			[
				["images/portal3exit-sheet0.png", 174, 0, 0, 16, 16, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		1916945353348265,
		[],
		null
	]
,	[
		"t100",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			1659388501581776,
			[
				["images/portal3exit-sheet0.png", 174, 0, 0, 16, 16, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		1914274427691026,
		[],
		null
	]
,	[
		"t101",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			570629170644679,
			[
				["images/smallredcrystalsright-sheet0.png", 219, 0, 0, 44, 28, 1, 0.5, 0.5,[],[-0.09090900421142578,0.1428570151329041,0,-0.357142984867096,0.2727270126342773,-0.1428569853305817,0.3636360168457031,0,0.4545450210571289,0.4285709857940674,0,0.5,-0.4545454978942871,0.4285709857940674,-0.4090909063816071,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		8101000664427307,
		[],
		null
	]
,	[
		"t102",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			6285287546804267,
			[
				["images/skeletonbones-sheet0.png", 216, 0, 0, 32, 32, 1, 0.5, 0.5,[],[-0.0625,-0.0625,0,-0.0625,0.1874999403953552,-0.1875,0.4374999403953552,0,0.1874999403953552,0.1874999403953552,0,0.25,-0.25,0.25,-0.1875,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		2460687238919854,
		[],
		null
	]
,	[
		"t103",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			6226460111077712,
			[
				["images/greenplant-sheet0.png", 172, 0, 0, 32, 32, 1, 0.5, 0.5,[],[0.0625,0.0625,0,0.125,-0.0625,0.0625,0.375,0,0.3125,0.3125,0,0.5,-0.3125,0.3125,-0.375,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		8347671481583356,
		[],
		null
	]
,	[
		"t104",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			2246829340385291,
			[
				["images/rock-sheet0.png", 163, 0, 0, 24, 24, 1, 0.5, 0.5,[],[-0.1666670143604279,-0.1666670143604279,0,-0.1666670143604279,0.08333301544189453,-0.08333298563957214,0.25,0,0.5,0.5,-0.5,0.5,-0.4166666865348816,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		5807588991371549,
		[],
		null
	]
,	[
		"t105",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			5681353507711258,
			[
				["images/largeredcrystals-sheet0.png", 367, 0, 0, 86, 46, 1, 0.5, 0.5,[],[-0.1976740062236786,0.06521701812744141,0,-0.3695650100708008,0.2906979918479919,-0.1086960136890411,0.3139529824256897,0,0.4767439961433411,0.4565219879150391,0,0.5,-0.4767442047595978,0.4565219879150391,-0.2906979918479919,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		8435499143402741,
		[],
		null
	]
,	[
		"t106",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			6683149054287545,
			[
				["images/skeletonhead-sheet0.png", 281, 0, 0, 32, 32, 1, 0.5, 0.5,[],[-0.125,-0.125,0,-0.4375,0.375,-0.375,0.3125,0,0.375,0.375,0,0.375,-0.125,0.125,-0.5,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		7197900306524595,
		[],
		null
	]
,	[
		"t107",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			6292519377897087,
			[
				["images/upsidegrass-sheet0.png", 179, 0, 0, 24, 24, 1, 0.5, 0.5,[],[0.1666669845581055,0.1666669845581055,0,0.3333330154418945,-0.3333330154418945,0.3333330154418945,0.25,0,0.5,0.5,-0.5,0.5,0.1666669845581055,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		2923353091878103,
		[],
		null
	]
,	[
		"t108",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			4691618520859797,
			[
				["images/ruinsgrass-sheet0.png", 176, 0, 0, 24, 24, 1, 0.5, 0.5,[],[-0.04166701436042786,-0.04166701436042786,0,-0.25,0.04166698455810547,-0.04166701436042786,0.2083330154418945,0,0.5,0.5,-0.5,0.5,-0.04166701436042786,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		4948989969866015,
		[],
		null
	]
,	[
		"t109",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			3,
			true,
			1,
			0,
			false,
			4989818958898497,
			[
				["images/exit-sheet0.png", 258, 0, 0, 48, 48, 1, 0.5, 0.5,[],[-0.2057290077209473,-0.2044270038604736,0.2070310115814209,-0.2044270038604736,0.2083330154418945,0.2057290077209473,-0.2083329856395721,0.2057290077209473],0],
				["images/exit-sheet1.png", 280, 0, 0, 48, 48, 1, 0.5, 0.5,[],[-0.2057290077209473,-0.2044270038604736,0.2070310115814209,-0.2044270038604736,0.2083330154418945,0.2057290077209473,-0.2083329856395721,0.2057290077209473],0],
				["images/exit-sheet2.png", 278, 0, 0, 48, 48, 1, 0.5, 0.5,[],[-0.2057290077209473,-0.2044270038604736,0.2070310115814209,-0.2044270038604736,0.2083330154418945,0.2057290077209473,-0.2083329856395721,0.2057290077209473],0]
			]
			]
		],
		[
		],
		false,
		false,
		1572768655620442,
		[],
		null
	]
,	[
		"t110",
		cr.plugins_.Sprite,
		false,
		[],
		1,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			516459418172989,
			[
				["images/lockeddoor-sheet0.png", 191, 0, 0, 48, 48, 1, 0.5, 0.5,[],[-0.5,-0.5,0.009114980697631836,-0.5,0.5,-0.5,0.5,0.003906011581420898,0.5,0.5,0.005208015441894531,0.5,-0.5,0.5,-0.5,-0.003906011581420898],0]
			]
			]
		],
		[
		[
			"Solid",
			cr.behaviors.solid,
			9179217976561449
		]
		],
		false,
		false,
		4305526975144506,
		[],
		null
	]
,	[
		"t111",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			8333013935763484,
			[
				["images/key-sheet0.png", 249, 0, 0, 48, 48, 1, 0.5, 0.5,[],[-0.25,-0.25,0,-0.2083329856395721,0.04166698455810547,-0.04166701436042786,0.125,0,0.25,0.25,0,0.25,-0.04166701436042786,0.04166698455810547,-0.2083329856395721,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		943423065404046,
		[],
		null
	]
,	[
		"t112",
		cr.plugins_.Sprite,
		false,
		[],
		1,
		0,
		null,
		[
			[
			"Right",
			4,
			true,
			1,
			0,
			false,
			4678719930130645,
			[
				["images/splashhero-sheet0.png", 228, 0, 0, 48, 48, 1, 0.5, 1,[["Key", 0.7291666865348816, 0.8125],["Disarm", 0.1875, 0.625]],[],0],
				["images/hero-sheet0.png", 448, 1, 1, 48, 48, 1, 0.5, 1,[["Key", 0.7291666865348816, 0.8125],["Disarm", 0.1875, 0.625]],[],0]
			]
			]
,			[
			"Electrified",
			8,
			true,
			1,
			0,
			false,
			2451634197534927,
			[
				["images/hero-sheet1.png", 6115, 1, 1, 32, 32, 1, 0.5, 1,[],[],0],
				["images/hero-sheet1.png", 6115, 34, 1, 32, 32, 1, 0.5, 0.5,[],[],0]
			]
			]
,			[
			"Explode",
			3,
			false,
			1,
			0,
			false,
			3282835896792726,
			[
				["images/hero-sheet1.png", 6115, 67, 1, 32, 32, 1, 0.5, 0.5,[],[],0],
				["images/hero-sheet1.png", 6115, 1, 34, 32, 32, 1, 0.5, 0.5,[],[],0],
				["images/hero-sheet1.png", 6115, 34, 34, 32, 32, 1, 0.5, 0.5,[],[],0]
			]
			]
,			[
			"Exit",
			8,
			true,
			1,
			0,
			false,
			8816948504508391,
			[
				["images/splashhero-sheet0.png", 228, 0, 0, 48, 48, 1, 0.5, 1,[["Key", 0.7291666865348816, 0.8125],["Disarm", 0.1875, 0.625],["Exit", 0.5208333134651184, 0.6458333134651184]],[],0],
				["images/hero-sheet0.png", 448, 50, 1, 48, 48, 1, 1, 0.5,[["Key", 0.8125, 0.2708333432674408],["Disarm", 0.625, 0.8125],["Exit", 0.5208333134651184, 0.6458333134651184]],[-1,0.5,-1,-0.5,0,-0.5,0,0.5],0],
				["images/hero-sheet0.png", 448, 1, 50, 48, 48, 1, 0.5, 0,[["Key", 0.2708333432674408, 0.1875],["Disarm", 0.8125, 0.375],["Exit", 0.5208333134651184, 0.6458333134651184]],[0.5,1,-0.5,1,-0.5,0,0.5,0],0],
				["images/hero-sheet0.png", 448, 50, 50, 48, 48, 1, 0, 0.5,[["Key", 0.1875, 0.7291666865348816],["Disarm", 0.375, 0.1875],["Exit", 0.5208333134651184, 0.6458333134651184]],[1,-0.5,1,0.5,0,0.5,0,-0.5],0]
			]
			]
		],
		[
		[
			"Fade",
			cr.behaviors.Fade,
			2025385482845484
		]
		],
		false,
		false,
		121178212350115,
		[],
		null
	]
,	[
		"t113",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			4,
			true,
			1,
			0,
			false,
			6134884723053712,
			[
				["images/mine-sheet0.png", 198, 0, 0, 48, 48, 1, 0.5, 0.5,[],[-0.002604007720947266,-0.2526040077209473,0.2473959922790527,-0.002604007720947266,0.001303017139434815,0.2500010132789612,-0.2526040077209473,-0.007813006639480591],0],
				["images/mine-sheet1.png", 196, 0, 0, 48, 48, 1, 0.5, 0.5,[],[-0.002604007720947266,-0.2526040077209473,0.2473959922790527,-0.002604007720947266,0.001303017139434815,0.2500010132789612,-0.2526040077209473,-0.007813006639480591],0]
			]
			]
		],
		[
		],
		false,
		false,
		4604859921319033,
		[],
		null
	]
,	[
		"t114",
		cr.plugins_.Sprite,
		false,
		[],
		1,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			2126639470043507,
			[
				["images/playerbox-sheet0.png", 93, 0, 0, 32, 32, 1, 0.5, 1,[["Flipped", 0.5, 0]],[],1]
			]
			]
		],
		[
		[
			"Platform",
			cr.behaviors.Platform,
			7189956913594344
		]
		],
		false,
		false,
		8151239223997924,
		[],
		null
	]
,	[
		"t115",
		cr.plugins_.Sprite,
		false,
		[9319409568588294,9038579401360889],
		1,
		0,
		null,
		[
			[
			"Default",
			4,
			true,
			1,
			0,
			false,
			9865930994215821,
			[
				["images/electricity-sheet0.png", 247, 0, 0, 48, 48, 1, 0.5, 0.5,[],[-0.1614579856395721,-0.5,0.1640620231628418,-0.5,0.1692709922790527,0.5,-0.1614579856395721,0.5],0],
				["images/electricity-sheet1.png", 252, 0, 0, 48, 48, 1, 0.5, 0.5,[],[-0.1640619933605194,-0.4947916567325592,0.1614580154418945,-0.4973958432674408,0.1692709922790527,0.5,-0.1588540077209473,0.5],0]
			]
			]
		],
		[
		[
			"Timer",
			cr.behaviors.Timer,
			2959996765956765
		]
		],
		false,
		false,
		4091259626562568,
		[],
		null
	]
,	[
		"t116",
		cr.plugins_.TiledBg,
		false,
		[],
		0,
		0,
		["images/ruinsbackground.png", 1595, 1],
		null,
		[
		],
		false,
		false,
		4885419150763037,
		[],
		null
	]
,	[
		"t117",
		cr.plugins_.TiledBg,
		false,
		[],
		0,
		0,
		["images/cavebackground.png", 1698, 1],
		null,
		[
		],
		false,
		false,
		5863470626662764,
		[],
		null
	]
,	[
		"t118",
		cr.plugins_.TiledBg,
		false,
		[],
		0,
		0,
		["images/volcanobackground.png", 2581, 1],
		null,
		[
		],
		false,
		false,
		1187036754096815,
		[],
		null
	]
,	[
		"t119",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			6739856092097318,
			[
				["images/bombdisarm-sheet0.png", 176, 0, 0, 24, 24, 1, 0.5, 0.5,[],[-0.25,-0.25,0,-0.1666670143604279,0.1666669845581055,-0.1666670143604279,0.2083330154418945,0,0.2083330154418945,0.2083330154418945,0,0.5,-0.2916669845581055,0.2916669845581055,-0.2916669845581055,0],0]
			]
			]
		],
		[
		],
		false,
		false,
		8907326648082038,
		[],
		null
	]
,	[
		"t120",
		cr.plugins_.Sprite,
		false,
		[],
		2,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			3671426892582234,
			[
				["images/movingplatform-sheet0.png", 160, 0, 0, 48, 24, 1, 0.5, 0.5,[],[-0.5,-0.3359369933605194,0.5,-0.3333330154418945,0.5,0,0.5,0.3333330154418945,-0.5,0.3307290077209473,-0.5,0],0]
			]
			]
		],
		[
		[
			"Sine",
			cr.behaviors.Sin,
			2214677229750354
		]
,		[
			"Solid",
			cr.behaviors.solid,
			6660848905353137
		]
		],
		false,
		false,
		1663923644638238,
		[],
		null
	]
,	[
		"t121",
		cr.plugins_.Keyboard,
		false,
		[],
		0,
		0,
		null,
		null,
		[
		],
		false,
		false,
		5059732176741312,
		[],
		null
		,[]
	]
,	[
		"t122",
		cr.plugins_.Touch,
		false,
		[],
		0,
		0,
		null,
		null,
		[
		],
		false,
		false,
		9708455777385303,
		[],
		null
		,[1]
	]
,	[
		"t123",
		cr.plugins_.Browser,
		false,
		[],
		0,
		0,
		null,
		null,
		[
		],
		false,
		false,
		1185609405772276,
		[],
		null
		,[]
	]
,	[
		"t124",
		cr.plugins_.Spritefont2,
		false,
		[],
		0,
		0,
		["images/helpcontenttext.png", 853, 3],
		null,
		[
		],
		false,
		false,
		8539788526878446,
		[],
		null
	]
,	[
		"t125",
		cr.plugins_.Arr,
		false,
		[],
		0,
		0,
		null,
		null,
		[
		],
		true,
		false,
		137823224015088,
		[],
		null
	]
,	[
		"t126",
		cr.plugins_.WebStorage,
		false,
		[],
		0,
		0,
		null,
		null,
		[
		],
		false,
		false,
		1505397437850728,
		[],
		null
		,[]
	]
,	[
		"t127",
		cr.plugins_.Function,
		false,
		[],
		0,
		0,
		null,
		null,
		[
		],
		false,
		false,
		1408308654452862,
		[],
		null
		,[]
	]
,	[
		"t128",
		cr.plugins_.Audio,
		false,
		[],
		0,
		0,
		null,
		null,
		[
		],
		false,
		false,
		3470889994090074,
		[],
		null
		,[0,0,1,1,600,600,10000,1,5000,1]
	]
,	[
		"t129",
		cr.plugins_.Spritefont2,
		false,
		[],
		0,
		0,
		["images/helpcontenttext.png", 853, 3],
		null,
		[
		],
		false,
		false,
		1083234914346418,
		[],
		null
	]
,	[
		"t130",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			7369094788586617,
			[
				["images/skybackground-sheet0.png", 447, 0, 0, 480, 320, 1, 0.5, 0.5,[],[],1]
			]
			]
		],
		[
		],
		false,
		false,
		8310939280383528,
		[],
		null
	]
,	[
		"t131",
		cr.plugins_.Mouse,
		false,
		[],
		0,
		0,
		null,
		null,
		[
		],
		false,
		false,
		9366531529116347,
		[],
		null
		,[]
	]
,	[
		"t132",
		cr.plugins_.gamepad,
		false,
		[],
		0,
		0,
		null,
		null,
		[
		],
		false,
		false,
		8130892982712088,
		[],
		null
		,[25]
	]
,	[
		"t133",
		cr.plugins_.windowsphone,
		false,
		[],
		0,
		0,
		null,
		null,
		[
		],
		false,
		false,
		5238718416493395,
		[],
		null
		,[0]
	]
,	[
		"t134",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			9257007390519249,
			[
				["images/howtobg-sheet0.png", 234, 0, 0, 352, 224, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		6563398005546586,
		[],
		null
	]
,	[
		"t135",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			9095404154588416,
			[
				["images/leftarrow-sheet0.png", 174, 0, 0, 32, 32, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		6559940030352565,
		[],
		null
	]
,	[
		"t136",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			1767791755630354,
			[
				["images/letterg-sheet0.png", 162, 0, 0, 32, 32, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		2453742029645416,
		[],
		null
	]
,	[
		"t137",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			7302480104496252,
			[
				["images/rightarrow-sheet0.png", 172, 0, 0, 32, 32, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		771848490837274,
		[],
		null
	]
,	[
		"t138",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			5050740403818201,
			[
				["images/keycarry-sheet0.png", 176, 0, 0, 28, 28, 1, 0.5, 0.5,[],[-0.07142901420593262,-0.07142901420593262,0,-0.2142859995365143,0.4285709857940674,-0.4285714030265808,0.357142984867096,0,0.07142901420593262,0.07142901420593262,0,0.357142984867096,-0.4285714030265808,0.4285709857940674,-0.4285714030265808,0],0]
			]
			]
		],
		[
		],
		true,
		false,
		177487837322053,
		[],
		null
	]
,	[
		"t139",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			8310626708380449,
			[
				["images/bombdisarm-sheet0.png", 176, 0, 0, 24, 24, 1, 0.5, 0.5,[],[-0.25,-0.25,0,-0.1666670143604279,0.1666669845581055,-0.1666670143604279,0.2083330154418945,0,0.2083330154418945,0.2083330154418945,0,0.5,-0.2916669845581055,0.2916669845581055,-0.2916669845581055,0],0]
			]
			]
		],
		[
		],
		true,
		false,
		3015135040320422,
		[],
		null
	]
,	[
		"t140",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			0,
			false,
			1,
			0,
			false,
			6156449318583728,
			[
				["images/musicnote-sheet0.png", 136, 0, 0, 32, 32, 1, 0.5, 0.5,[],[],3],
				["images/musicnote-sheet1.png", 359, 0, 0, 32, 32, 1, 0.5, 0.5,[],[],0]
			]
			]
		],
		[
		],
		false,
		false,
		3091520970999927,
		[],
		null
	]
,	[
		"t141",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			0,
			false,
			1,
			0,
			false,
			9934517304487666,
			[
				["images/volumetoggle-sheet0.png", 178, 0, 0, 24, 24, 1, 0.5, 0.5,[],[],3],
				["images/volumetoggle-sheet1.png", 205, 0, 0, 24, 24, 1, 0.5, 0.5,[],[],3]
			]
			]
		],
		[
		],
		false,
		false,
		772686482405897,
		[],
		null
	]
,	[
		"t142",
		cr.plugins_.Sprite,
		false,
		[],
		0,
		0,
		null,
		[
			[
			"Default",
			5,
			false,
			1,
			0,
			false,
			5649835535962931,
			[
				["images/izzytitle-sheet0.png", 2455, 0, 0, 437, 119, 1, 0.5011441707611084, 0.5042017102241516,[],[-0.464530885219574,-0.3697479367256165,-0.002288341522216797,0.0168067216873169,0.3569793701171875,0.0168067216873169,0.1487414240837097,-0.008403390645980835,0.4324942827224731,0.2521008253097534,-0.002288341522216797,0.2268907427787781,-0.3432494401931763,-0.08403363823890686,-0.06864988803863525,-0.008403390645980835],0]
			]
			]
		],
		[
		],
		false,
		false,
		1178736834492549,
		[],
		null
	]
,	[
		"t143",
		cr.plugins_.Sprite,
		true,
		[],
		1,
		0,
		null,
		null,
		[
		[
			"Solid2",
			cr.behaviors.solid,
			2043708865762676
		]
		],
		false,
		false,
		2255812047525149,
		[],
		null
	]
,	[
		"t144",
		cr.plugins_.Sprite,
		true,
		[],
		0,
		0,
		null,
		null,
		[
		],
		false,
		false,
		2185872592553534,
		[],
		null
	]
	],
	[
		[143,51,52,53,54,45,31,48,32,33,46,47,34,35,49,36,37,38,39,41,40,91,76,77,86,87,74,78,79,80,75,81,82,83,71,84,73,72,92,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70]
,		[144,15,16,14,13]
	],
	[
	[
		"Level1",
		480,
		320,
		false,
		"Levels",
		6697576583779394,
		[
		[
			"Background",
			0,
			4230275150707237,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				117,
				20,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
,			[
				[120, 233, 0, 86, 46, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				105,
				971,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[196, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				972,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				970,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[168, 52, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				974,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 96, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				103,
				973,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				104,
				77,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[328, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				969,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			7187988642870165,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				85,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				29,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				10,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[168, 304, 0, 192, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				13,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 0, 0, 24, 320, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				60,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[312, 15.99998664855957, 0, 288, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				62,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[60, 264, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				24,
				64,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				65,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[408, 304, 0, 48, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				8,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				9,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 16, 0, 48, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				12,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				14,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				15,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				52,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				53,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				54,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				61,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				71,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				72,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				73,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				74,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				76,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				0,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				18,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				32,
				16,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				33,
				17,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				39,
				19,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				38,
				49,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				51,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				55,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				33,
				1,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				2,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				3,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				4,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				11,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				6,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				7,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 120, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				66,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				68,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				69,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[160, 100, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				70,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 124, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				48,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[320, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				56,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				57,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[400, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				58,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				5,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				75,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[160, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				79,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				80,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[400, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				78,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				81,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 124, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				82,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				83,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				84,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				86,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				87,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				88,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				89,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				50,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[64, 268, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				161,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[60, 244, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				918,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[64, 148, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				953,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[60, 172, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				968,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[28, 292, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				106,
				975,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[356, 28, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				102,
				976,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			9816842609604771,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Player",
			3,
			5633465912302251,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[140, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				24,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				25,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				26,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 132, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				27,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				30,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 256, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				22,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					1500,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 256, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				21,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			2438616546065934,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
			[
				null,
				125,
				92,
				[
				],
				[
				],
				[
					12,
					1,
					1
				]
			]
		],
		[]
	]
,	[
		"Level2",
		480,
		320,
		false,
		"Levels",
		1199208985279433,
		[
		[
			"Background",
			0,
			7826928149675106,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				117,
				93,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
,			[
				[240, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				985,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 268, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				986,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 244, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				104,
				987,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 96, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				103,
				989,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[380, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				990,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			5874397313490921,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[432, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				115,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				38,
				124,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				245,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				236,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				94,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				95,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[120, 304, 0, 240, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				97,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 64, 0, 24, 192, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				98,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[360, 15.99999046325684, 0, 336, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				99,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[372, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				101,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				103,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				105,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				106,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				107,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				108,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				110,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				32,
				118,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				38,
				121,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				122,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				123,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				33,
				125,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				126,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				127,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				129,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				130,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				131,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 216, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				132,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[112, 148, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				135,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[224, 148, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				137,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[112, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				142,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[108, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				143,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[108, 172, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				149,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				150,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 52, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				151,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				152,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				153,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 304, 0, 48, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				109,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[84, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				231,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				232,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				111,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				112,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				113,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				114,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				117,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				146,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				147,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				45,
				233,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				234,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				235,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				237,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				134,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 172, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				133,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 120, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				238,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				239,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[160, 124, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				240,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				241,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 120, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				242,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				243,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				45,
				244,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[368, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				246,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				247,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				248,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				249,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				250,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				102,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				104,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 264, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				251,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 244, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				252,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[50, 290, 0, 44, 28, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				101,
				988,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[420, 28, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				106,
				991,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			2522959679542674,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Player",
			3,
			3022958131609649,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[144, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				154,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				155,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				156,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[380, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				157,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				158,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 304, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				159,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					1500,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 304, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				160,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			1557165212435865,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level3",
		480,
		320,
		false,
		"Levels",
		8530121325181773,
		[
		[
			"Background",
			0,
			6094523110575446,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				117,
				162,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
,			[
				[144, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				992,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[316, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				993,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 124, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				994,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 50, 0, 44, 28, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				101,
				995,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				104,
				997,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[116, 48, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				103,
				998,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				1039,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			1170192751350193,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				163,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				164,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 304, 0, 432, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				166,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 0, 0, 24, 304, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				167,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[312, 15.99998664855957, 0, 288, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				168,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 16, 0, 96, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				173,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				179,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				185,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				32,
				187,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				39,
				189,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				38,
				190,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				191,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				192,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				195,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				196,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				197,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				200,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				217,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				218,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				116,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				119,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				120,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				45,
				128,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				136,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				138,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				139,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				140,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				141,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				48,
				144,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				145,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				148,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				171,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				165,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[348, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				207,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[352, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				208,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 72, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				209,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 52, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				210,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[160, 220, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				211,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				212,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[320, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				220,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				221,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				172,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				174,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[128, 148, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				169,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 172, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				175,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 216, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				176,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				177,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 220, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				170,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				178,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				180,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				181,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				184,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				182,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				183,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[528, 140, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				268,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[120, 112, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				102,
				996,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			7299971666988418,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Player",
			3,
			7867552788778619,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[432, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				223,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				224,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				225,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				226,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				227,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 304, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				228,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					1500,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 304, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				229,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			5176292444747912,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level4",
		480,
		320,
		false,
		"Levels",
		4965893572835053,
		[
		[
			"Background",
			0,
			6573759296586194,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				117,
				269,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
,			[
				[384, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1033,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				1035,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[122, 186, 0, 86, 46, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				105,
				1036,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				1038,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1034,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[104, 288, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				103,
				1037,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			4835658330213999,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				400,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				310,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				401,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				33,
				290,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				270,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				271,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 304, 0, 432, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				272,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 0, 0, 24, 208, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				273,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[120, 15.99996948242188, 0, 96, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				274,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 16, 0, 96, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				275,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				276,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				39,
				279,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				38,
				280,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				281,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				283,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				284,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				285,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				286,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				287,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				288,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				289,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[-72, 60, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				291,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				45,
				292,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				293,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				294,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				48,
				298,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				299,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				300,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				301,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				302,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[348, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				303,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[352, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				304,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 120, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				305,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				308,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[320, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				309,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				311,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				312,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				314,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 216, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				315,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 76, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				317,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 52, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				318,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				319,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				320,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				321,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				322,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				323,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				324,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 100, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				282,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 124, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				395,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				396,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				32,
				397,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[128, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				313,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[160, 124, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				307,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				398,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[312, 16.00000381469727, 0, 144, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				277,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[180, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				316,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[176, 148, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				295,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 172, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				296,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				399,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				402,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[304, 148, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				403,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[300, 172, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				404,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				405,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				297,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				406,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 256, 0, 24, 48, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				407,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[160, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				278,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				408,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[352, 124, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				409,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[348, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				410,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				411,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				412,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				413,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			4150884245854177,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Player",
			3,
			5493065414374181,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				325,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				326,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				327,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				328,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				329,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				330,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					1500,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				331,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			4057709476168584,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level5",
		480,
		320,
		false,
		"Levels",
		6957646397484978,
		[
		[
			"Background",
			0,
			192261819055897,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				117,
				332,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
,			[
				[336, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1029,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				1030,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[100, 194, 0, 44, 28, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				101,
				1031,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[380, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				1032,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			6419432468657545,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				426,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				333,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				334,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 304, 0, 192, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				335,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 64, 0, 24, 216, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				336,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[72, 16, 0, 48, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				337,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[264, 15.99999618530273, 0, 48, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				338,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				339,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				32,
				341,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				345,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				346,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				347,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				348,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				349,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				350,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				351,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				353,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				362,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				363,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				365,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				382,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				383,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				384,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				385,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				386,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				387,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				414,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				415,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				416,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				417,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				418,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				419,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				420,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				421,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				49,
				422,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				423,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[264, 304, 0, 96, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				424,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				425,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				340,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				45,
				342,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				32,
				343,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				45,
				344,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				45,
				354,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				33,
				355,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				45,
				357,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				358,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				359,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[408, 304, 0, 48, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				356,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[384, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				360,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[204, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				366,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[208, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				367,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				368,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				369,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[272, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				372,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				373,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				371,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[80, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				376,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				377,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[400, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				380,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				381,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[256, 244, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				361,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 268, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				364,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 52, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				370,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				378,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[256, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				374,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				375,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				379,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				352,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			5337133835343038,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Player",
			3,
			1204501526136216,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[432, 92, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				388,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				389,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				390,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				391,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				392,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 160, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				393,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					1500,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 160, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				394,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			2676106617149219,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level6",
		480,
		320,
		false,
		"Levels",
		2934400415352102,
		[
		[
			"Background",
			0,
			4774521615876527,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				117,
				427,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
,			[
				[380, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1024,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1025,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				1026,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 144, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				103,
				1027,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				104,
				1028,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			8525739761702993,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				461,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				33,
				471,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				39,
				581,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				32,
				582,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				585,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				586,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				580,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				429,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				430,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 304, 0, 288, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				431,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 0, 0, 24, 280, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				432,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[168, 16.00000762939453, 0, 144, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				433,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 16.00001335144043, 0, 240, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				434,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				435,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				32,
				436,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				437,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				438,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				440,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				442,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				443,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				444,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				446,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				447,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				448,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				449,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				450,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				451,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				452,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				453,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				455,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				460,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				465,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				45,
				467,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[360, 304, 0, 96, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				475,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				476,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[208, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				478,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 168, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				479,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 148, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				480,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				481,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 124, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				482,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[204, 52, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				483,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[176, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				484,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				485,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[208, 76, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				486,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				487,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				491,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[256, 124, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				492,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 120, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				493,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				494,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				495,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				579,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				439,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[204, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				477,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				39,
				583,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				48,
				584,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[224, 100, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				456,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[112, 172, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				457,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[108, 148, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				458,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				39,
				428,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[128, 196, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				490,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 220, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				441,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[320, 244, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				445,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 268, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				454,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				459,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[352, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				462,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[348, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				463,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				464,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				466,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				468,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			1445403503637295,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Player",
			3,
			1589891530026645,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[336, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				496,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				497,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				498,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				499,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				500,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 160, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				501,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					1500,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 160, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				502,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			7070146691123824,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level7",
		480,
		320,
		false,
		"Levels",
		1472889300594603,
		[
		[
			"Background",
			0,
			5829717840197324,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				117,
				503,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
,			[
				[284, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1018,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				1021,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				1022,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[408, 290, 0, 44, 28, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				101,
				1023,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 244, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				104,
				1019,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[92, 240, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				103,
				1020,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			2941160345150606,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				504,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				505,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				506,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 304, 0, 48, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				507,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 0, 0, 24, 280, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				508,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 16.00003433227539, 0, 432, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				509,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				511,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				513,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				514,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				515,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				516,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				518,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				519,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				523,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				524,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				525,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				526,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				527,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				528,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				536,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				537,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[120, 304, 0, 192, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				540,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				541,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				542,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[360, 304, 0, 96, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				551,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				552,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				555,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				556,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				557,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[108, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				559,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[352, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				562,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[348, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				563,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[112, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				568,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				569,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				570,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				469,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				470,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			548392900241255,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[96, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				472,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				473,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				474,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				488,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				489,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				510,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				572,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				573,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				574,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				575,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				576,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			1568048497472589,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 304, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				577,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					1500,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 304, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				578,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			3953913225051531,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level8",
		480,
		320,
		false,
		"Levels",
		4072971822567611,
		[
		[
			"Background",
			0,
			771778330601856,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				117,
				512,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				46,
				608,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 148, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1015,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1016,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				1017,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			6337115853148945,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				610,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				550,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				611,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				612,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				517,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				520,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				521,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 304, 0, 144, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				522,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 112, 0, 24, 168, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				529,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[264, 16.0000171661377, 0, 240, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				530,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				531,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				532,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				533,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				534,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				535,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				538,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				539,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				543,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				544,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				545,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				546,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				547,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				548,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				549,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[216, 304, 0, 144, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				553,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				554,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				558,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[408, 304, 0, 48, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				560,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[192, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				561,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				564,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				565,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[204, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				567,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[400, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				571,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				587,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[208, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				588,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				589,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				590,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				592,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 0, 0, 24, 64, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				606,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[96, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				46,
				607,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				609,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				599,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				613,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				614,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				615,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				48,
				616,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				32,
				617,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 16, 0, 144, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				618,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				619,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				620,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				621,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				622,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				623,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				624,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[304, 76, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				625,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[300, 52, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				626,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				566,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				591,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 100, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				629,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 124, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				630,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 52, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				627,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 72, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				628,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[272, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				631,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				632,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[304, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				633,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[300, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				634,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			1863591183269312,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[96, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				595,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				596,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				597,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				598,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				600,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				601,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				602,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				603,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				604,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				605,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			6664875504982563,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[432, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				593,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				594,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			1477966741097532,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level9",
		480,
		320,
		false,
		"Levels",
		3669544162349401,
		[
		[
			"Background",
			0,
			9408865417180345,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				117,
				635,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
,			[
				[284, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				1009,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[116, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				104,
				1010,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[124, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1011,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 98, 0, 44, 28, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				101,
				1012,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1013,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 288, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				103,
				1014,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			1988225856234968,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				660,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				642,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				705,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				32,
				683,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				637,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				638,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				643,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 304, 0, 288, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				644,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 0, 0, 24, 280, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				645,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[168, 16.00000762939453, 0, 144, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				646,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				647,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				648,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				649,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				650,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				651,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				652,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				653,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				654,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				655,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				656,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				657,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				658,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				659,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				663,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[360, 304, 0, 96, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				664,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[324, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				666,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				667,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				668,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[352, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				669,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[348, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				670,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 124, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				671,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				46,
				676,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				678,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 16, 0, 144, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				684,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				685,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				688,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 220, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				691,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				692,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				693,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				694,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[176, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				699,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				700,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[304, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				701,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[300, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				702,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				690,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				636,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				33,
				687,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				45,
				689,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				639,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				641,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				662,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				665,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 268, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				672,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 244, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				673,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 148, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				674,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 172, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				675,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[300, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				682,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			5686041038882792,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[336, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				709,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				711,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				661,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				679,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				680,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				677,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				681,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				640,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				686,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				695,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				696,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				697,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				698,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			9365753114250308,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[336, 256, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				703,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 256, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				704,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			8791876474244142,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level10",
		480,
		320,
		false,
		"Levels",
		8481653951260585,
		[
		[
			"Background",
			0,
			7226996412744921,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				117,
				706,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
,			[
				[216, 281, 0, 86, 46, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				105,
				1006,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 244, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1003,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				1004,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 172, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				1005,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[408, 96, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				103,
				1007,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			8607915869267491,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[192, 280, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				763,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				764,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				38,
				710,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				712,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				755,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				740,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				772,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				713,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				38,
				761,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				774,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				775,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				762,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				768,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				770,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				707,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				715,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 304, 0, 48, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				716,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 0, 0, 24, 112, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				717,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 16.00003433227539, 0, 432, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				718,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				719,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				720,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				721,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				723,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				726,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				727,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				728,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				729,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				732,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[360, 304, 0, 96, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				733,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[132, 264, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				734,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 244, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				735,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[352, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				737,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[348, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				738,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				741,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				744,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				747,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				748,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[352, 148, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				751,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				754,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[348, 172, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				765,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				722,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				724,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				725,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 196, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				730,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 220, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				731,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				708,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				745,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				746,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 148, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				759,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 172, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				760,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[168, 304, 0, 96, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				771,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[84, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				776,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				777,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 160, 0, 24, 120, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				742,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				753,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				31,
				743,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				714,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				38,
				756,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				757,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				779,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[160, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				780,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				781,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 264, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				749,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 244, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				750,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				739,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				758,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[312, 292, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				102,
				1008,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			135732298605804,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[144, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				769,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				773,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				778,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[236, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				782,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				752,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				783,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				784,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[284, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				785,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				736,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			5629784860259182,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 304, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				766,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 304, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				767,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			5905605733568017,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level11",
		480,
		320,
		false,
		"Levels",
		8813931605660156,
		[
		[
			"Background",
			0,
			3434631870841008,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				117,
				786,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
,			[
				[388, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				999,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 288, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				103,
				1001,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 148, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				104,
				1002,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			8631616964536249,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[144, 280, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				851,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				852,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				36,
				788,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				794,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				855,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				48,
				835,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				836,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 0, 0, 24, 280, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				838,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[192, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				789,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				36,
				790,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				798,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				799,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				800,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 304, 0, 144, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				801,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[312, 16.00002098083496, 0, 288, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				803,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				804,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				805,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				806,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				807,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				808,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				809,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				810,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				811,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				812,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[216, 304, 0, 240, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				813,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[180, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				814,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				815,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				818,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				819,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				820,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				821,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[352, 100, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				822,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				823,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[348, 124, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				824,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				825,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				826,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				827,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 244, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				828,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 268, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				829,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				830,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				831,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				832,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				833,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 220, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				834,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[208, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				845,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[204, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				846,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				849,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				850,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				39,
				857,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[208, 220, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				847,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[204, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				848,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 220, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				858,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[176, 196, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				859,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[208, 244, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				860,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[204, 268, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				862,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 16, 0, 96, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				837,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[320, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				839,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				840,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[352, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				844,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[348, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				863,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[388, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				46,
				944,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				787,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				46,
				791,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 52, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1000,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			1039295773251576,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[96, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				856,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				861,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				793,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				942,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				943,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				945,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				946,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				947,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				792,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			9093864179543315,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				853,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				854,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			6713461321682808,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level12",
		480,
		320,
		false,
		"Levels",
		7203436864004064,
		[
		[
			"Background",
			0,
			9553871044144938,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				117,
				864,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
,			[
				[48, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				978,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				107,
				979,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[440, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				104,
				980,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				977,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 194, 0, 44, 28, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				101,
				982,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			9884810517526964,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[432, 44, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				99,
				965,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				100,
				890,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				98,
				920,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				97,
				867,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				930,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				929,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				916,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				949,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				45,
				817,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				917,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				816,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				954,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				919,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				935,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				950,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				937,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				939,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				45,
				842,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				45,
				877,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				32,
				796,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				872,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				873,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				874,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				876,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 136, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				878,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 304, 0, 48, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				879,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[456, 0, 0, 24, 208, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				880,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[72, 16, 0, 48, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				881,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				882,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				883,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				884,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				885,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				889,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 120, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				892,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				893,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[208, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				894,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[204, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				895,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				896,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				897,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[80, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				898,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				899,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[400, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				900,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				34,
				901,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				902,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				903,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				904,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				905,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[256, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				906,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				907,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				908,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 4, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				24,
				909,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				27,
				910,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				911,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[256, 124, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				912,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[216, 304, 0, 240, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				913,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[84, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				914,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				915,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				921,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				922,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[112, 316, 0, 24, 16, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				25,
				923,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[108, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				924,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 216, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				925,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				926,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				927,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				928,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				36,
				795,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				797,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				802,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[360, 16, 0, 96, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				841,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				933,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				938,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				948,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				951,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[224, 52, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				952,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[120, 304, 0, 48, 16, 0, 0, 1, 0, 0, 0, 0, []],
				42,
				871,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				37,
				875,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				48,
				866,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				35,
				886,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				956,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[368, 4, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				957,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				958,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 16, 0, 48, 16, 0, 3.141592741012573, 1, 0, 0, 0, 0, []],
				43,
				959,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[240, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				843,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				46,
				961,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				963,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 44, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				964,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				47,
				865,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 256, 0, 24, 64, 0, 0, 1, 0, 0, 0, 0, []],
				44,
				868,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					0
				]
			]
,			[
				[220, 24, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				102,
				981,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 312, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				887,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				888,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 268, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				26,
				983,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 244, 0, 24, 16, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				25,
				984,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			3488966941642387,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[288, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				934,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[188, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				940,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 188, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				941,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				955,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				936,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				960,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				962,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			9748420969618677,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 304, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				931,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 304, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				932,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			2417287291798552,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level13",
		480,
		320,
		false,
		"Levels",
		8584579785697472,
		[
		[
			"Background",
			0,
			2037825212291125,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				116,
				204,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			2072515246101415,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[364, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1079,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				54,
				1462,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, -112, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				53,
				1463,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				52,
				1464,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				51,
				1465,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1466,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[120, -216, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				56,
				1467,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1468,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1469,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1470,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1471,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				61,
				1472,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				62,
				1473,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1474,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[120, -60, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1475,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1476,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1477,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1478,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[120, -164, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				68,
				1479,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				69,
				1480,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[224, -164, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				70,
				1481,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1482,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1483,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1484,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1485,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1486,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1487,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				214,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				216,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				219,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				222,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				253,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				254,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				255,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				256,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				257,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				258,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1488,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1489,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1490,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1491,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1492,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1493,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1494,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1495,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1496,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1497,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1498,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1499,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1500,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1501,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1502,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1503,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1504,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1505,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1506,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1507,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1508,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[68, -164, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1076,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[172, -164, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				69,
				1509,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[172, -112, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				61,
				1510,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[224, -112, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				62,
				1511,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[68, -112, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1512,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[120, -112, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1513,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[68, -60, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1514,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[224, -60, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1515,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[172, -60, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1516,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, -164, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				54,
				1517,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, -60, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				52,
				1518,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, -216, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				51,
				1519,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[172, -216, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1520,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[224, -216, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1521,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[68, -216, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1522,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			9798146422161388,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[240, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1177,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1178,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1179,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1180,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1181,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1182,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				1113,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				1099,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				1112,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				1140,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				1141,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1159,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[244, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				97,
				1160,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				98,
				1161,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				194,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[244, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				198,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				199,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				115,
				201,
				[
					[7],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				115,
				202,
				[
					[10],
					[3]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				203,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				206,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 24, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				260,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[212, 112, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				263,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				30,
				1523,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[32, 60, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				1524,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 116, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				1525,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				1526,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[308, 212, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				1528,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 296, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				1529,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 212, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				30,
				1530,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 160, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				1532,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 300, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				1537,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[300, 88, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				215,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[160, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				1538,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 232, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				1539,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[244, 204, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				30,
				1540,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 84, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				1541,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			6125549996343679,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[436, 304, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				1174,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[436, 304, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				1175,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			8770682934022543,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level14",
		480,
		320,
		false,
		"Levels",
		5185680218278658,
		[
		[
			"Background",
			0,
			2363800725137953,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				116,
				259,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			3981504537321349,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Objects",
			2,
			9267744529739678,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[192, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1085,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				1088,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 184, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				1089,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				1090,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				1091,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				1092,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1096,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1097,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1103,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1083,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1084,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1086,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1087,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1093,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 88, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				1098,
				[
					[5],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				1100,
				[
					[5],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				1102,
				[
					[8],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				1104,
				[
					[6],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				1105,
				[
					[4],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1107,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1126,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1127,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1128,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1129,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[368, 293, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				108,
				262,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[44, 245, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				108,
				261,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 124, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				108,
				1101,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				108,
				1130,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				70,
				1527,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1544,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1545,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1546,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1547,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1548,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				56,
				1549,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				56,
				1550,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				61,
				1551,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				68,
				1552,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				51,
				1553,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1554,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1555,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1556,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1557,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1558,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1559,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1560,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1561,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1562,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1563,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1564,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1565,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1566,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1567,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1568,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1569,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1570,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1571,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1572,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1573,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				264,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				265,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				266,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				267,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				891,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				966,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1075,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1077,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1078,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1082,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1106,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1574,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1575,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1576,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1577,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1578,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 288, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				1622,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 88, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				1981,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[60, 284, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				1982,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 20, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				1983,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 260, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				1984,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 204, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				1985,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				1986,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[460, 112, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				29,
				1987,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[460, 160, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				1988,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 168, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				1989,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[32, 100, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				1990,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 72, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				1991,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 208, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				29,
				1992,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 180, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				1993,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			157230454483342,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[44, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				1080,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[44, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				1081,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			1923405795069692,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level15",
		480,
		320,
		false,
		"Levels",
		2143783954355176,
		[
		[
			"Background",
			0,
			8553967203018154,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				116,
				1094,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			4983104307721778,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1533,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1542,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1132,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1138,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1139,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1142,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1144,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1543,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1579,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				52,
				1580,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				54,
				1581,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1582,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1583,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				70,
				1584,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1585,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1586,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1587,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1588,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				70,
				1589,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1590,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1591,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				68,
				1592,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1593,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1095,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1594,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1595,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1596,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1597,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1598,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1599,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1600,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1601,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1602,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1603,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1604,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1605,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1606,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1607,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1608,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1609,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1610,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1611,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1612,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1613,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1614,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1615,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1616,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1617,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1618,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1619,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1620,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1621,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 32, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				1995,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 232, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				1996,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 32, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				1997,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[80, 192, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				1998,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 120, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				1999,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[124, 16, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				2000,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[164, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2001,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2002,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2003,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 60, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2004,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 132, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2005,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[460, 304, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2006,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2007,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[340, 116, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2008,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[344, 92, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2009,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 260, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2010,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 300, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				30,
				2011,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 300, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2012,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 256, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2013,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 308, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				2014,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[248, 272, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2015,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[64, 212, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2016,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[44, 188, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				30,
				2017,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 80, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2018,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			976756470554892,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[240, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				1148,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				1149,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				1150,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1153,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1154,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[97, 136, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				1168,
				[
					[4],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1169,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1173,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1131,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1133,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 41, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				115,
				1134,
				[
					[4],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				1135,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1136,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 180, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1137,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				1143,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1147,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1155,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				1151,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				1152,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			1207380938917216,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[432, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				1145,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				1146,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			3343157511608583,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level16",
		480,
		320,
		false,
		"Levels",
		6134572725811009,
		[
		[
			"Background",
			0,
			5960810821358379,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				116,
				1186,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			7508653889654341,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				70,
				1623,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				62,
				1189,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				56,
				1191,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				56,
				1195,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				56,
				1196,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				51,
				1197,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1199,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1231,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1232,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1624,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1625,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1626,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1627,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1628,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1629,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1630,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1631,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1187,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1632,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1633,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1634,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1635,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1636,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1637,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1638,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1639,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1640,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1641,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1642,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1643,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1644,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1645,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1646,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1647,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1648,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1649,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1650,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1651,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1652,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1653,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1654,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1655,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1656,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1657,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1658,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1659,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2019,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2020,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 288, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2021,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 232, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2022,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[32, 76, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2023,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 160, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2024,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 184, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				29,
				2025,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[8, 200, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				29,
				2026,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 232, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				2027,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[264, 236, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2028,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 308, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2029,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 292, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2030,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 140, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2031,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 88, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2032,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 136, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2033,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[60, 108, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				2034,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 124, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				108,
				2232,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[356, 268, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				108,
				2233,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			1083938009576293,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[96, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				1219,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				1220,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[97, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				1221,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				1222,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				1223,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1224,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1225,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[97, 136, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				1235,
				[
					[6],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1237,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1241,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1188,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1190,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1192,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1193,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1194,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1198,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1218,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1226,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[337, 88, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				1227,
				[
					[6],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 41, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				115,
				1228,
				[
					[6],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				1229,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				1230,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				1233,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				1234,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			2661452762102094,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[44, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				1200,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[44, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				1217,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			832575970885022,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level17",
		480,
		320,
		false,
		"Levels",
		3064380094651067,
		[
		[
			"Background",
			0,
			92699592522485,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				116,
				1156,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			8205200699583862,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1163,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1164,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				69,
				1165,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1167,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1176,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				69,
				1660,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1661,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				56,
				1662,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1663,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1664,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1665,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				68,
				1666,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1667,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1668,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				70,
				1669,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				61,
				1670,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1671,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1672,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1673,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1674,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1675,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1157,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1676,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1677,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1678,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1679,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1680,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1681,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1682,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1683,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1684,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1685,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1686,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1687,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1688,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1689,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1690,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1691,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1692,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1693,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1694,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1695,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1696,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1697,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1698,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1699,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1700,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1701,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1702,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1703,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[420, 288, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2035,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 204, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2036,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2037,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 232, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2038,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[316, 264, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2044,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[108, 272, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				2045,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[116, 308, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2046,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[332, 228, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2047,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[356, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2048,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[316, 8, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				29,
				2049,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 36, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2050,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[164, 72, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2051,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[176, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2052,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 288, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2053,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 20, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				30,
				2054,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 300, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2055,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 116, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2056,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 132, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2057,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[404, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				108,
				2058,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				108,
				2059,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2060,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 124, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2061,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[32, 140, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2062,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 104, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2063,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			6010885654053392,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[96, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				98,
				1287,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				97,
				1288,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				1183,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				1185,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 188, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				1236,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 188, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1238,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1239,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				1240,
				[
					[6],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1242,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1245,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				1256,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1279,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				1280,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1281,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1282,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1283,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1284,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1285,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1286,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				1289,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1290,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1291,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			2937280090716529,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[240, 304, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				1171,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 304, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				1172,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[360, 264, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2039,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[356, 284, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2040,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[364, 296, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2041,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[332, 264, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				30,
				2042,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 292, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2043,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			952922279107307,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level18",
		480,
		320,
		false,
		"Levels",
		6900119587822936,
		[
		[
			"Background",
			0,
			4707222819644128,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				116,
				1158,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			8826999303626427,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1704,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1166,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1170,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1184,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1705,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1706,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1707,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1708,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1709,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1710,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1711,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1712,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1713,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1714,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1715,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1716,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				69,
				1717,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1718,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1719,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1720,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				62,
				1721,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1722,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1723,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1724,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				70,
				1725,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				62,
				1726,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				70,
				1727,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				69,
				1728,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1730,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1162,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1731,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1732,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1733,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1734,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1735,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1736,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1737,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1738,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1739,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1740,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1741,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1742,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1743,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1744,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1745,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1746,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1747,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1748,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1749,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1750,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1751,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1243,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				51,
				1752,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2064,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2065,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 288, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2066,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 108, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2067,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[164, 116, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				2068,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[296, 136, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2069,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[304, 152, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2070,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 32, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				2071,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2072,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[116, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2073,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 120, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2074,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[28, 204, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2075,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 308, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2076,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 288, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				29,
				2077,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[76, 136, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2078,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[72, 160, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2079,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[116, 76, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2080,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2081,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[300, 20, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				30,
				2082,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 300, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2083,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2084,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 40, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2085,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 176, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2086,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[388, 148, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2087,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[400, 128, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2088,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			3803827228693498,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				1247,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				1248,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				1249,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				1250,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1251,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1252,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[433, 184, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				1253,
				[
					[7],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1255,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1257,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 137, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				1258,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 36, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				1259,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[433, 88, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				1254,
				[
					[8],
					[3]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[337, 184, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				1292,
				[
					[6],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[337, 88, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				1293,
				[
					[6],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1294,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				115,
				1295,
				[
					[4],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1296,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1297,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1298,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				1299,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1300,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1301,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			5745406085681309,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[144, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				1244,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				1246,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			5676133401692245,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level19",
		480,
		320,
		false,
		"Levels",
		5537603175301666,
		[
		[
			"Background",
			0,
			3490554791816845,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				116,
				1260,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			9379206234337586,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[384, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1729,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				56,
				1753,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1754,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1755,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1756,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1757,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1262,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1263,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1264,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1261,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1265,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1758,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1759,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1760,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1761,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1762,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1763,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1764,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1765,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1766,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1767,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1768,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1769,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1770,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1771,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1772,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1773,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1774,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1775,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1776,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1777,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1778,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1779,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1780,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1781,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1782,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1783,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1784,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1785,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2089,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[404, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2090,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2091,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 292, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2092,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 32, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				2093,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[140, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2094,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 88, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2095,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[32, 300, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2096,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 296, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				2097,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[32, 196, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2098,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 168, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2099,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				108,
				2230,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				108,
				2231,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			8486587560855852,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[288, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				1268,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				1269,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1275,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1276,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 41, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				1277,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				1278,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1302,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1303,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1304,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[196, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1305,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1306,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1270,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1271,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 232, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				1272,
				[
					[5],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1273,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			8014985908738003,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[144, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				1266,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				1267,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 168, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				120,
				1274,
				[
				],
				[
				[
					1,
					0,
					0,
					4,
					0,
					0,
					0,
					48,
					0
				],
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				120,
				1307,
				[
				],
				[
				[
					1,
					0,
					0,
					2,
					3,
					5,
					0,
					48,
					0
				],
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			1238063495351162,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level20",
		480,
		320,
		false,
		"Levels",
		6977816938560742,
		[
		[
			"Background",
			0,
			1383170330290888,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				116,
				1308,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			294403595952777,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1786,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				68,
				1787,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1788,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1789,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				70,
				1790,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1791,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				68,
				1792,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1793,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1310,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1311,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1312,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1309,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1313,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1794,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1795,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1796,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1797,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1798,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1799,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1800,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1801,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1802,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1803,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1804,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1805,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1806,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1807,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1808,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1809,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1810,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1811,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1812,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1813,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1814,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1815,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1816,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1817,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1818,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1819,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1820,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1821,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			8405454389604064,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[236, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				1331,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				1318,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				1319,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1320,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1321,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				1322,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1324,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1325,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1326,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1327,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1328,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1329,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1330,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1332,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1333,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[236, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1323,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 284, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				1334,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 284, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1335,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1336,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1337,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2100,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[356, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2101,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 204, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2102,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 288, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2103,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2104,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[460, 44, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2105,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 68, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2106,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[28, 12, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2107,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 28, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2108,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 12, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				30,
				2109,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[268, 212, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2110,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[236, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2111,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[244, 216, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				2112,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 296, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				2113,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 288, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2114,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[116, 304, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				30,
				2115,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 236, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2116,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 260, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2117,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[308, 308, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2118,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 300, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2119,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[284, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2120,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[292, 268, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2121,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[304, 256, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2122,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			4864350053717079,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 304, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				1314,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 304, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				1315,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 104, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				120,
				1316,
				[
				],
				[
				[
					1,
					0,
					0,
					4,
					0,
					0,
					0,
					48,
					0
				],
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				120,
				1317,
				[
				],
				[
				[
					1,
					0,
					0,
					4,
					2,
					2,
					0,
					96,
					0
				],
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			8770578979286315,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level21",
		480,
		320,
		false,
		"Levels",
		8491163750587525,
		[
		[
			"Background",
			0,
			3090680792959806,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				116,
				1338,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			2891275397243602,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1822,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1823,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1824,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1825,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1826,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				68,
				1827,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				56,
				1828,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				52,
				1829,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				54,
				1830,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1340,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1341,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1342,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1343,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1831,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1832,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1833,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1834,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1835,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1836,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1339,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1837,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1838,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1839,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1840,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1841,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1842,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1843,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1844,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1845,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1846,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1847,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1848,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1849,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1850,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1851,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1852,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1853,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1854,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1855,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1856,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1857,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1858,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1859,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			7489042246739182,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 280, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				1363,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				1348,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				1349,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1350,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1351,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				1352,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1362,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 232, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				1364,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1365,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1353,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1354,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1355,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1356,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1357,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1358,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1359,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1360,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1361,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[244, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1366,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				1936,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2123,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 20, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				30,
				2124,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[244, 12, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2125,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[248, 48, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2126,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[248, 28, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2127,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2128,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[164, 20, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				2129,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 144, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				2130,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[204, 232, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				2131,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[348, 40, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				2132,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[356, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2133,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[368, 32, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2134,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2135,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[472, 36, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2136,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 288, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2137,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[352, 244, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2138,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 300, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2139,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[116, 308, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2140,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2141,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 208, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2142,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 308, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2143,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 12, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				30,
				2144,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[28, 68, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2145,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 112, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2146,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 152, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2147,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			8375929225929368,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				1344,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				1345,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 140, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				120,
				1347,
				[
				],
				[
				[
					1,
					0,
					0,
					6,
					2,
					2,
					0,
					188,
					0
				],
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			3639679866589646,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level22",
		480,
		320,
		false,
		"Levels",
		8433853283322417,
		[
		[
			"Background",
			0,
			2033383744153407,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				116,
				1382,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			5618011679113803,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				68,
				1384,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1385,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1386,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1387,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				69,
				1860,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				70,
				1861,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1862,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1863,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1864,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1865,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1866,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1867,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1868,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1869,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1870,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1871,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1872,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1383,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1873,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1874,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1875,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1876,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1877,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1878,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1879,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1880,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1881,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1882,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1883,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1884,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1885,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1886,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1887,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1888,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1889,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1890,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1891,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1892,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1893,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1894,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1895,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1896,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1897,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 288, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2149,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 164, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2150,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[356, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2151,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2152,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 184, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2153,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 184, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				2154,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[120, 180, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2155,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[28, 12, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2156,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 32, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2157,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[32, 300, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2158,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2159,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 36, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2160,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 12, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2161,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 108, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2162,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[420, 136, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2163,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[440, 140, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2164,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[208, 12, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				29,
				2165,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 300, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				30,
				2166,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 300, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2167,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 112, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2168,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 136, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2169,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 148, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				30,
				2170,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 180, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2171,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 236, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				30,
				2172,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2173,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				108,
				2227,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[100, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				108,
				2228,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				104,
				2229,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			1659668975463974,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[96, 280, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				1391,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				1392,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				1393,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1394,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				1396,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1397,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				1398,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1399,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1406,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1395,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1400,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1401,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1402,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1403,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1404,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1405,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1407,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			5563434891244942,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[432, 304, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				1388,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 304, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				1389,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[360, 232, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				120,
				1390,
				[
				],
				[
				[
					1,
					0,
					0,
					4,
					0,
					0,
					0,
					72,
					0
				],
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			6658651046234257,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level23",
		480,
		320,
		false,
		"Levels",
		3154322637361884,
		[
		[
			"Background",
			0,
			7265383339292922,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				116,
				1408,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			6710809440308939,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				51,
				1907,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				52,
				1898,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				53,
				1900,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				54,
				1899,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1905,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1906,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1904,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1901,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1902,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1903,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1412,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1924,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1925,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1926,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1413,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1908,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1919,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1920,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1921,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1922,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1923,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1909,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1409,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1911,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1912,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1913,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1914,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1915,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1916,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1917,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1918,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1534,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1910,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1931,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1932,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1933,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1934,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1935,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1410,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1411,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1927,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1928,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1929,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1930,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			2475318426531735,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[144, 136, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				1414,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				1415,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				1416,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				1418,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1419,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				1420,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1421,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1422,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1425,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1428,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1417,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1423,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1424,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1426,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1427,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[124, 92, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				120,
				1433,
				[
				],
				[
				[
					1,
					0,
					0,
					4,
					0,
					0,
					0,
					72,
					0
				],
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 168, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				120,
				1429,
				[
				],
				[
				[
					1,
					0,
					0,
					4,
					0,
					0,
					0,
					48,
					0
				],
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2174,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[356, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2175,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2176,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 168, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2177,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 212, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2178,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 16, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2179,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 44, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2180,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[460, 68, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2181,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[32, 288, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2182,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 260, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2183,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[32, 244, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2184,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 220, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				30,
				2185,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 232, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2186,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[16, 204, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2187,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 32, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				2188,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 64, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2189,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[212, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2190,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[352, 188, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2191,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[344, 212, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2192,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 232, 0, 24, 48, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				28,
				2193,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			8279079668185671,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[96, 208, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				1431,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 208, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				1432,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			3089104330121069,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level24",
		480,
		320,
		false,
		"Levels",
		7859128267401516,
		[
		[
			"Background",
			0,
			8486578004686422,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				116,
				1430,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			3088646911555843,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1531,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1535,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1536,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1937,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1938,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1939,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				55,
				1940,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1941,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				70,
				1942,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				62,
				1943,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				54,
				1944,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				52,
				1945,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1946,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				69,
				1947,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				58,
				1948,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				60,
				1949,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				69,
				1950,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				62,
				1951,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				64,
				1952,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				57,
				1953,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1954,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1435,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1436,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1437,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1438,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1955,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1956,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1957,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				63,
				1958,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1434,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1959,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1960,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1961,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1962,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1963,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1964,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				67,
				1965,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1966,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1967,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1968,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				65,
				1969,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1970,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1971,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1972,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1973,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1974,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1975,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				59,
				1976,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1977,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1978,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				66,
				1979,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			8902320470108082,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 136, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				1439,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				1440,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				1441,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				1442,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1443,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				1444,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1445,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1449,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1452,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1446,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1447,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1448,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				1450,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 148, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				120,
				1451,
				[
				],
				[
				[
					1,
					0,
					0,
					3,
					2,
					0,
					0,
					47,
					0
				],
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 244, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				120,
				1453,
				[
				],
				[
				[
					1,
					0,
					0,
					3,
					2,
					0,
					0,
					47,
					0
				],
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				1454,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				1455,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 232, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				97,
				1458,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				98,
				1459,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1460,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				1461,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2194,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[340, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				30,
				2195,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[356, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2196,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[344, 40, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2197,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 132, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2198,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[268, 148, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2199,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[464, 20, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				29,
				2200,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[472, 36, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2201,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2202,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 76, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2203,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[420, 88, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2204,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 300, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2205,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[160, 244, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2206,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 156, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2207,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[128, 116, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				29,
				2208,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[256, 252, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				29,
				2209,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[260, 308, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2210,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 256, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2211,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[344, 12, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2212,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 204, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2213,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 112, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2214,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 152, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				29,
				2215,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[40, 128, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2216,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[36, 148, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2217,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[60, 120, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2218,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 292, 0, 24, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				28,
				2219,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2220,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2221,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[20, 308, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2222,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[308, 112, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2223,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[92, 184, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				30,
				2224,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[116, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				29,
				2225,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[60, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				30,
				2226,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 124, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				108,
				1980,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[104, 28, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				108,
				1994,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[72, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				108,
				2148,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			4494926891570567,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[432, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				1456,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				1457,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			3372022079742216,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level25",
		480,
		320,
		false,
		"Levels",
		5916648608866645,
		[
		[
			"Background",
			0,
			3130544477909722,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				118,
				2237,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			6303183386691011,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2345,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2255,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2256,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2258,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2235,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2236,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2238,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2239,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2241,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2242,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2244,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2245,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2246,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2247,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2249,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2250,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2251,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2252,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2253,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2254,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2257,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2259,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2261,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2262,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2263,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2264,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2265,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2266,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2267,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2268,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2240,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2243,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2285,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				87,
				2281,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				87,
				2283,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				86,
				2284,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				86,
				2297,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2295,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2299,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2300,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2248,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2260,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2302,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				80,
				2307,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2308,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				81,
				2309,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				78,
				2310,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 236, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				2314,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					4,
					0,
					0,
					0,
					48,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2303,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2304,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2305,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2306,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2316,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 220, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2317,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2318,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2319,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2320,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[300, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2321,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2322,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2323,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 244, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2324,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2325,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2326,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 172, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2327,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2328,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[236, 228, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2329,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[244, 284, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2333,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[244, 140, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2334,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 116, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2335,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[476, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2336,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[472, 176, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2337,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[280, 32, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2338,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[232, 284, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2339,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 288, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2340,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[380, 128, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2341,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 68, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				90,
				2342,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[232, 180, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				90,
				2346,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			436730434763261,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[44, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				2286,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				2287,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				2288,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				2289,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[44, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				2290,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				2291,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				2292,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2293,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2296,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				2301,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2278,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2282,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2311,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2312,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2313,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2277,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2315,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2294,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2298,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			9784226544085858,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[192, 160, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				2343,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 160, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				2344,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			1359838255599874,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level26",
		480,
		320,
		false,
		"Levels",
		639763601766525,
		[
		[
			"Background",
			0,
			7469542275498089,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				118,
				2347,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			4237219672546368,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2373,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2405,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				78,
				2412,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2348,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2349,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2350,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2351,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2352,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2353,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2354,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2355,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2356,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2357,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2358,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2359,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2360,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2361,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2362,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2363,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2364,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2365,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2366,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2368,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2369,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2370,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2371,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2372,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2374,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2375,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2376,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2377,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				87,
				2392,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				86,
				2394,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2403,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[100, 180, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				2406,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					6,
					0,
					0,
					0,
					48,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2409,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2413,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2417,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[300, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2418,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2420,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2426,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 168, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2429,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 48, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2430,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[476, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2431,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[472, 176, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2432,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[136, 36, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2433,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 40, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				90,
				2437,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2367,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2410,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2416,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2388,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				79,
				2402,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2389,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2404,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2395,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2387,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2393,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2396,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2400,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2414,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[140, 72, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2421,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[284, 124, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2428,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 44, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2434,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 248, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				2448,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					4,
					0,
					0,
					0,
					96,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 148, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				2449,
				[
				],
				[
				[
					1
				],
				[
					1,
					1,
					0,
					4,
					0,
					0,
					0,
					72,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			9805492113076983,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 88, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				2439,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				2440,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				2441,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				2442,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				2443,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				2444,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				2445,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2456,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2397,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2398,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2399,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2401,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2408,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2419,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2422,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2424,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2427,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2435,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[292, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2436,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2446,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 216, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2447,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2438,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			5383849310801096,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[432, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				2458,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				2459,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			9528966825824592,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level27",
		480,
		320,
		false,
		"Levels",
		8352768295309814,
		[
		[
			"Background",
			0,
			7650953137580301,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				118,
				2450,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			5072619371099785,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[240, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2270,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2272,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2269,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2271,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2275,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				78,
				2453,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2454,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2455,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2457,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2460,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2461,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2462,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2463,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2464,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2465,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2466,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2467,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2468,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2469,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2470,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2471,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2472,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2474,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2475,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2476,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2477,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2479,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2480,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2481,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2482,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2483,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2484,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				86,
				2497,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 180, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				2499,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					4,
					0,
					0,
					0,
					48,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2501,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2503,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2505,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[348, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2506,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2507,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 168, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2511,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 48, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2512,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[476, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2513,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[472, 176, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2514,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 40, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				90,
				2516,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2520,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2524,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2525,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[348, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2529,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 240, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2532,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				2533,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					4,
					0,
					0,
					0,
					48,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				81,
				2234,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				83,
				2273,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				77,
				2274,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2276,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2279,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2280,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2330,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[236, 252, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2331,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[236, 232, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2332,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2378,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2379,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2380,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				2381,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				2382,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			3470875734144171,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[144, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				2535,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				2537,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				2539,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				2540,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				2541,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2542,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2543,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2545,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2548,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2549,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2550,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2552,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2553,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2556,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2383,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2384,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2385,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2386,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			6123467303100623,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[288, 304, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				2557,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 304, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				2558,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			5515732907800069,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level28",
		480,
		320,
		false,
		"Levels",
		8174929356892385,
		[
		[
			"Background",
			0,
			4126750705490158,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				118,
				2390,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			7722445715249616,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2425,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2451,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2452,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2473,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2478,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2496,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2498,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2510,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2515,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2517,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2518,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2519,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2521,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2522,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2523,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2526,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2527,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2528,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2530,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2534,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2544,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2546,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2547,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2551,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2555,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2559,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				86,
				2571,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2574,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2576,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2578,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2580,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 168, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2583,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 48, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2584,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[476, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2585,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 40, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				90,
				2587,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2588,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2589,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2590,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[244, 172, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				2594,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					4,
					0,
					0,
					0,
					48,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2599,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2600,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2391,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2407,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				77,
				2411,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				77,
				2415,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 172, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2554,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2586,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				77,
				2591,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				77,
				2593,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2423,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			8294949219681986,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[432, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				2611,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				2608,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2579,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2595,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2596,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2597,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2598,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2601,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2602,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2603,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2604,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2605,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			5551764864477133,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[144, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				2629,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				2630,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			1444610774032326,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level29",
		480,
		320,
		false,
		"Levels",
		1041653812036854,
		[
		[
			"Background",
			0,
			200889629102711,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				118,
				2606,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			3206462287122097,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2562,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2493,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2500,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2502,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				86,
				2656,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				81,
				2491,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				78,
				2492,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2616,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2617,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2619,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2620,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2621,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2622,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2623,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2625,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2626,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2628,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2631,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2632,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2633,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2634,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2635,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2636,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2637,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2639,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2640,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2641,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2642,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2643,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2644,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2659,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2661,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2663,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2664,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[196, 168, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2667,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 48, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2668,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[476, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2669,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 40, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				90,
				2670,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2671,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2673,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 152, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				2675,
				[
				],
				[
				[
					1
				],
				[
					1,
					1,
					0,
					4,
					0,
					0,
					0,
					96,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2676,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2677,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2678,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2679,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[204, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2682,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2683,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2686,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				81,
				2485,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2486,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2487,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				80,
				2488,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2489,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				86,
				2490,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				78,
				2494,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				78,
				2495,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[300, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2504,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2508,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2509,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[180, 172, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2531,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 220, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2536,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2538,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				77,
				2560,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				87,
				2561,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 196, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2563,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 172, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2564,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[200, 48, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2565,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[176, 24, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2566,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 12, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2567,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[304, 28, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2568,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			2036659776313716,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				2687,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				2690,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				2691,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				2692,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				2693,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2569,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2570,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2572,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2573,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2575,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2577,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2581,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2582,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2592,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				2607,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				2609,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				2614,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2610,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			223415627201865,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[336, 208, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				2707,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 208, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				2708,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			4646920060590144,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level30",
		480,
		320,
		false,
		"Levels",
		5066994804273315,
		[
		[
			"Background",
			0,
			4108929253232244,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				118,
				2612,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			6273208133600458,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2681,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2684,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2685,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2697,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2698,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2699,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2700,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2701,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2702,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2703,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2704,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2705,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2706,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2709,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2710,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2711,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2712,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2713,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2714,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2715,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2716,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2717,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2718,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2732,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2734,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2736,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2737,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 48, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2741,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[476, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2742,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 40, 0, 24, 24, 0, -1.570796489715576, 1, 0.5, 0.5, 0, 0, []],
				90,
				2743,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2744,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2745,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				2747,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					3,
					2,
					0,
					0,
					48,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2748,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2749,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2750,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2751,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2754,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2768,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2613,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2615,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2618,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				2665,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					3,
					2,
					0,
					0,
					48,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				2666,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					3,
					2,
					0,
					0,
					48,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				2672,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					3,
					2,
					0,
					0,
					48,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				2674,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					3,
					2,
					0,
					0,
					48,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			4138805805262538,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 160, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				2779,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2624,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2627,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2638,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2645,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2646,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2647,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2648,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2649,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2650,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2651,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2652,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2653,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2654,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2655,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2657,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2658,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2660,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2662,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2680,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 200, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2688,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2689,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 200, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2694,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2695,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			4598955340621458,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[96, 224, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				2801,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 224, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				2802,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			5295551442647124,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level31",
		480,
		320,
		false,
		"Levels",
		2153122056889498,
		[
		[
			"Background",
			0,
			7017987149267494,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				118,
				2696,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			6290815195210589,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2740,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2752,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2753,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2755,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2756,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2757,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2758,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2759,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2760,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2761,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2762,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2763,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2764,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2765,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2766,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2767,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2769,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2770,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2772,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2773,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2774,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2775,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2799,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2803,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2805,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2806,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 48, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2809,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[476, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2810,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2812,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2816,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2818,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2819,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2820,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2821,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2822,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2823,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2824,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2721,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2722,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				83,
				2723,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2724,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2725,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				79,
				2726,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2727,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2728,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2729,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				80,
				2730,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2731,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				83,
				2733,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2735,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				79,
				2738,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				81,
				2739,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				78,
				2746,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2777,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2778,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2771,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2782,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				82,
				2781,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2783,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2947,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2948,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2949,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2950,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 148, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2951,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 220, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2952,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[108, 220, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2953,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[204, 124, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2954,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[88, 160, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2955,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 152, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2956,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[108, 160, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2957,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[92, 220, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2958,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[92, 120, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2959,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[188, 124, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2960,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 164, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2961,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 160, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2962,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[376, 148, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2963,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[376, 188, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2964,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2965,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2966,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			270618483539561,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[432, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				2829,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				2831,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				2832,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 184, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				2833,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				2834,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				2719,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2720,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2784,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2785,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2786,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2798,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				2811,
				[
					[5],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				115,
				2813,
				[
					[8],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				2815,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				2817,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2825,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2826,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2827,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				2828,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				2839,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			3021260359509465,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 304, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				2862,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 304, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				2863,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			4656015682166551,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level32",
		480,
		320,
		false,
		"Levels",
		7942938292471775,
		[
		[
			"Background",
			0,
			142504298936092,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				118,
				2840,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			421995759371153,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2841,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2842,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2843,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2844,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2846,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2847,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2848,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2849,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2850,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2852,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2853,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2854,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2855,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2856,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2857,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2858,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2859,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2860,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2861,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2864,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2878,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2880,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2882,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2883,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 48, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				2886,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[476, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2887,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2888,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2891,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2892,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2893,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2894,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2895,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2896,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2898,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2917,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2776,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2780,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2787,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				80,
				2788,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				79,
				2789,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2790,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2791,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[204, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2792,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2793,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				78,
				2794,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2795,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2796,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				81,
				2797,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2800,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2804,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				80,
				2807,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2808,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				86,
				2814,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2830,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2835,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2836,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				79,
				2837,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2838,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				81,
				2845,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				81,
				2851,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2890,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2897,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2899,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				87,
				2900,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 124, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2901,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 148, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2902,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2903,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[108, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2904,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 244, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2905,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 220, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2906,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 220, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2907,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 220, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2908,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[280, 132, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2909,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[400, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2910,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 192, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2911,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[292, 116, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2912,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[148, 40, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				2913,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[160, 24, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				2914,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 184, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				2915,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			8282824113440953,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[144, 88, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				2920,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				2923,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				2924,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				2925,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				115,
				2937,
				[
					[8],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				115,
				2916,
				[
					[2],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				115,
				2918,
				[
					[4],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				2919,
				[
					[7],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				2922,
				[
					[4],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2930,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2931,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				2932,
				[
					[4],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2933,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2934,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2935,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			4685133661222883,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 304, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				2945,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 304, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				2946,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			8880886891726016,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level33",
		480,
		320,
		false,
		"Levels",
		8092376736803277,
		[
		[
			"Background",
			0,
			6387316070193398,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				118,
				2938,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			1088881952235144,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3013,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2866,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2939,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2940,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2941,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2942,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2943,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2944,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2967,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2968,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				2969,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2970,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2971,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2972,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2973,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2974,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2975,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2976,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2977,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2978,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2979,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				2980,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2994,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				2996,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				2998,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2999,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 48, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				3002,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[476, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				3003,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3004,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3006,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3008,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3009,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3010,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3011,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3012,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3015,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				3020,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				3021,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3022,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				3024,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[348, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				3025,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				3043,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				3044,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				3045,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				3046,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				86,
				2865,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2867,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				81,
				2868,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 220, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2869,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 244, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2870,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2871,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				2872,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2873,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2874,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				78,
				2875,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				78,
				2876,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				77,
				2877,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				87,
				2879,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				3014,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					3,
					3,
					0,
					0,
					48,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 140, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				3017,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					4,
					2,
					0,
					0,
					48,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				3026,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					4,
					0,
					0,
					0,
					48,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			4069736197361757,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[432, 184, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				3058,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				3060,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				3061,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				3062,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2881,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2884,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2885,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2889,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				2921,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2926,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2927,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2928,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2929,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				2936,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				3007,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				3016,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				115,
				3018,
				[
					[5],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				115,
				3019,
				[
					[5],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				115,
				3023,
				[
					[5],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			1251472141005184,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[240, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				3079,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				3080,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			9442938170351712,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level34",
		480,
		320,
		false,
		"Levels",
		8858320945716329,
		[
		[
			"Background",
			0,
			4421082829119283,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				118,
				3027,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			6904706921435077,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3029,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3030,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3031,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3032,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3033,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3034,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3035,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3036,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3037,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3038,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3039,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3040,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3041,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3042,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3047,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3048,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3049,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3050,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3051,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3053,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				3081,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				3083,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				3085,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				3086,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 48, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				3089,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[476, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				3090,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3091,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3093,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3094,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3095,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3096,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3097,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				3107,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				3108,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3110,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3114,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3115,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2981,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				82,
				2982,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				80,
				2983,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				2984,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				2985,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				80,
				2986,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				2989,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2990,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				86,
				2991,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 244, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				2992,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 220, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				2993,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2995,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				2997,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				3000,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				82,
				3001,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				3005,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				79,
				3052,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				87,
				3057,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3098,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3099,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3100,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[108, 148, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				3101,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[108, 220, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				3102,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 244, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				3103,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 220, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				3104,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 148, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				3105,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[300, 148, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				3106,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[324, 124, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				3122,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[280, 176, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				3123,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 172, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				3124,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[108, 204, 0, 24, 24, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				90,
				3137,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[236, 264, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				3138,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3028,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				81,
				2987,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			3732121087910581,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 280, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				95,
				3125,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				3127,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 16, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				96,
				3128,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				94,
				3129,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				3136,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3059,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3063,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3064,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3065,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				3066,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 232, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				3067,
				[
					[7],
					[3]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 232, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				3070,
				[
					[5],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 228, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				3111,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				3116,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3117,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3118,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3119,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3120,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 184, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3121,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				2988,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3112,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				115,
				3113,
				[
					[6],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			6570317423729758,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[240, 208, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				3152,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 208, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				3153,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			7383531630304964,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level35",
		480,
		320,
		false,
		"Levels",
		6362585425338631,
		[
		[
			"Background",
			0,
			6425195867631252,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				118,
				3139,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			9775558795401757,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3140,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3141,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3142,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3143,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3144,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3145,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3146,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3147,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3148,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3149,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3150,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3151,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3154,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3155,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3156,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3157,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3159,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3160,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3161,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				3175,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				3177,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				3179,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				3180,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 48, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				3183,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[476, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				3184,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3185,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3187,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3189,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3190,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3191,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[132, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				3192,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				3193,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3194,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3195,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3196,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3203,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3215,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3216,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3229,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				81,
				3054,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3055,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				87,
				3056,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				3068,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				3069,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				86,
				3071,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				76,
				3072,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3073,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				3074,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3075,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				3076,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				3077,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[228, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				3078,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				83,
				3082,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				3084,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				80,
				3087,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				86,
				3088,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[252, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				3092,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				3109,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[276, 172, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				3126,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[372, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				3130,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[396, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				3131,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				3132,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				3133,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				3134,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				78,
				3135,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				84,
				3158,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3188,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				77,
				3213,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[72, 184, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				3218,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					4,
					0,
					0,
					0,
					24,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			3218034111483154,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[432, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				3197,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3198,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3199,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				3200,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				3201,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 136, 0, 48, 48, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				115,
				3202,
				[
					[5],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3204,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3205,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3206,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 228, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3207,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[92, 228, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3208,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				110,
				3209,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3210,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				111,
				3211,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				3212,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				115,
				3214,
				[
					[4],
					[2]
				],
				[
				[
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				119,
				3217,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			38345828179263,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				3261,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				3262,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			9182602361219437,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Level36",
		480,
		320,
		false,
		"Levels",
		8128141934831108,
		[
		[
			"Background",
			0,
			7820190779980611,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				118,
				3219,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			518799579291954,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[480, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3221,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3222,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3223,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3224,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3225,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3226,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 40, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3227,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3228,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3230,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3242,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3243,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3244,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3245,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3246,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3247,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3248,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 136, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3249,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3251,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				89,
				3267,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				3269,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 4, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				3271,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[468, 316, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				88,
				3272,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[4, 48, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				90,
				3275,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[476, 292, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				3276,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3277,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3279,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3280,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				72,
				3281,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3282,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3285,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3286,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3287,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3289,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3290,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3291,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[480, 232, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				73,
				3319,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3162,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, -8, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				74,
				3163,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 328, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				75,
				3165,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[472, 168, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				90,
				3166,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				87,
				3164,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[0, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				71,
				3167,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 100, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				88,
				3168,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[12, 76, 0, 24, 24, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				89,
				3283,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 160, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				3284,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					3,
					2,
					0,
					0,
					142,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 256, 0, 48, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				85,
				3288,
				[
				],
				[
				[
					1
				],
				[
					1,
					0,
					0,
					6,
					1,
					0,
					0,
					192,
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				77,
				3238,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				77,
				3170,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			3889937597780434,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[144, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3169,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3171,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3172,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3173,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3174,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3176,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3178,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3181,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3182,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3186,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3220,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3231,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 184, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3232,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3233,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 280, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3234,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3235,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3236,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3237,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3239,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[336, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3240,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				113,
				3241,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 280, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				3250,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 40, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3292,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3293,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[432, 136, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3294,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3295,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 232, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3296,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			3900251079900015,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 64, 0, 32, 32, 0, 0, 1, 0.5, 1, 0, 0, []],
				114,
				3351,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[48, 64, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				112,
				3352,
				[
				],
				[
				[
					0,
					0,
					0,
					1,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			8989208600464927,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Loader",
		480,
		320,
		false,
		"Loader",
		1161402920007779,
		[
		[
			"Background",
			0,
			6026995379888649,
			true,
			[255, 255, 255],
			false,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Loader",
			1,
			5278124034828987,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[300, 276, 0, 167, 36, 0, 0, 1, 0, 0, 0, 0, []],
				1,
				32,
				[
				],
				[
				],
				[
					"Loading: 100%",
					0,
					"12pt Arial",
					"rgb(0,0,0)",
					2,
					2,
					0,
					0,
					0
				]
			]
,			[
				[240.5, 160, 0, 225, 50, 0, 0, 1, 0.5022222399711609, 0.5, 0, 0, []],
				0,
				33,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Splash",
		480,
		320,
		false,
		"Splash",
		9457717285670537,
		[
		[
			"Background",
			0,
			8474579994319618,
			true,
			[255, 255, 255],
			false,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[240, 160, 0, 480, 320, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				130,
				1040,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[408, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				1043,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[360, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				1044,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[312, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				1045,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[264, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				1046,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[216, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				1047,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[168, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				1048,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[120, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				1049,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[72, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				1050,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[356, 152, 0, 64, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				5,
				1053,
				[
				],
				[
				[
					20,
					0,
					0,
					0,
					0,
					1
				],
				[
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[104, 108, 0, 64, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				5,
				1054,
				[
				],
				[
				[
					25,
					0,
					0,
					0,
					0,
					1
				],
				[
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[376, 284, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1055,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 284, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				1056,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 272, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				39,
				1058,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 272, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				38,
				1059,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				1041,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				1042,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[36, 304, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				24,
				1051,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[444, 304, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				1060,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[444, 284, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				1061,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[36, 284, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				1062,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			3929919620938194,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[240, 132, 0, 437, 119, 0, 0, 1, 0.5011441707611084, 0.5042017102241516, 0, 0, []],
				142,
				34,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Objects",
			2,
			2207891580540549,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[240, 200, 0, 256, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				3,
				35,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"PLAY",
					1,
					0,
					1,
					1,
					1,
					0,
					0,
					0
				]
			]
,			[
				[448, 32, 0, 40, 40, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				6,
				44,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[32, 32, 0, 40, 40, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				7,
				186,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[508, 16, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				139,
				3334,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[76, 32, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				140,
				870,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[116, 32, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				141,
				3335,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			3,
			8396321256892892,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[108, 296, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				4,
				1052,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			9176281985036703,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[48, 224, 0, 384, 32, 0, 0, 1, 0, 0, 0, 0, []],
				8,
				3270,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"HOW TO PLAY",
					1,
					0,
					1,
					1,
					0,
					0,
					0,
					0
				]
			]
,			[
				[460, -28, 0, 28, 28, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				138,
				3333,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"HowTo",
		480,
		320,
		false,
		"HowTo",
		9022675092610421,
		[
		[
			"Background",
			0,
			6004218444758657,
			true,
			[255, 255, 255],
			false,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[240, 160, 0, 480, 320, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				130,
				3273,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[408, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				3274,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[360, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				3278,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[312, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				3297,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[264, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				3298,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[216, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				3299,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[168, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				3300,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[120, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				3301,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[72, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				40,
				3302,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[356, 152, 0, 64, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				5,
				3303,
				[
				],
				[
				[
					20,
					0,
					0,
					0,
					0,
					1
				],
				[
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[104, 108, 0, 64, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				5,
				3304,
				[
				],
				[
				[
					25,
					0,
					0,
					0,
					0,
					1
				],
				[
					0
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[376, 284, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				3305,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[156, 284, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				107,
				3306,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 272, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				39,
				3307,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 272, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				38,
				3308,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[456, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				3309,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[24, 320, 0, 48, 48, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				41,
				3310,
				[
				],
				[
				[
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[36, 304, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				24,
				3311,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[444, 304, 0, 24, 16, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				25,
				3312,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[444, 284, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				27,
				3313,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[36, 284, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				26,
				3314,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			3057845682964426,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Player",
			2,
			7063257251365575,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Objects",
			3,
			7731001706449797,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[240, 159.9607849121094, 0, 471.6688842773438, 311.4931945800781, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				134,
				3316,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Hud",
			4,
			1593389889945463,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[36.58352661132813, 29.17765808105469, 0, 48, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				11,
				3315,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[320, 88, 0, 32, 46, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				10,
				3317,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[272, 120, 0, 192, 64, 0, 0, 1, 0, 0, 0, 0, []],
				9,
				3318,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"Touch right side of the screen or press Right Arrow to move Izzy to the right.",
					0.8,
					0,
					0,
					0,
					0,
					0,
					-2,
					0
				]
			]
,			[
				[144, 88, 0, 32, 46, 0, 3.141592741012573, 1, 0.5, 0.5, 0, 0, []],
				10,
				3320,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[32, 120, 0, 192, 64, 0, 0, 1, 0, 0, 0, 0, []],
				9,
				3321,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"Touch left side of the screen or press Left Arrow to move Izzy to the left.",
					0.8,
					0,
					0,
					0,
					0,
					0,
					-2,
					0
				]
			]
,			[
				[79, 296, 0, 48, 48, 0, 0, 1, 0.5, 1, 0, 0, []],
				4,
				3322,
				[
				],
				[
				[
					150,
					500,
					500,
					650,
					2000,
					1000,
					0,
					1
				]
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[66, 281, 0, 32, 46, 0, 1.570796370506287, 1, 0.5, 0.5, 0, 0, []],
				10,
				3323,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[32, 208, 0, 176, 48, 0, 0, 1, 0, 0, 0, 0, []],
				9,
				3324,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"Tap on Izzy or press G to invert gravity!",
					0.8,
					0,
					0,
					0,
					0,
					0,
					-2,
					0
				]
			]
,			[
				[288, 272, 0, 36, 36, 0, 0, 0.300000011920929, 0.5, 0.5, 0, 0, []],
				109,
				3325,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 224, 0, 24, 24, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				93,
				3326,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[308, 212, 0, 144, 32, 0, 0, 1, 0, 0, 0, 0, []],
				9,
				3327,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"Collect all 5 coins...",
					0.8,
					0,
					0,
					0,
					0,
					0,
					-3,
					0
				]
			]
,			[
				[308, 261, 0, 160, 32, 0, 0, 1, 0, 0, 0, 0, []],
				9,
				3328,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"...and reach the Exit Portal.",
					0.8,
					0,
					0,
					0,
					0,
					0,
					-3,
					0
				]
			]
,			[
				[48, 23, 0, 384, 16, 0, 0, 1, 0, 0, 0, 0, []],
				9,
				3329,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"HOW TO PLAY",
					1,
					0,
					1,
					0,
					0,
					0,
					-2,
					0
				]
			]
,			[
				[80, 88, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				135,
				3330,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[137, 278, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				136,
				3331,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 88, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				137,
				3332,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Episode1",
		480,
		320,
		false,
		"LevelSelect",
		5256727081562784,
		[
		[
			"Background",
			0,
			6972255291781331,
			true,
			[255, 255, 255],
			false,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Level",
			1,
			9195506844974248,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				117,
				967,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
,			[
				[96, 96, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				36,
				[
					[1]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 96, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				37,
				[
					[2]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 96, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				38,
				[
					[3]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 96, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				39,
				[
					[4]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 176, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				40,
				[
					[8]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 176, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				41,
				[
					[7]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 176, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				42,
				[
					[6]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 176, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				43,
				[
					[5]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 256, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				59,
				[
					[9]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 256, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				63,
				[
					[10]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 256, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				67,
				[
					[11]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 256, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				90,
				[
					[12]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[172, 26, 0, 224, 32, 0, 0, 1, 0, 0, 0, 0, []],
				124,
				91,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"Episode One: Cave",
					0.8,
					0,
					1,
					0,
					0,
					0,
					-2,
					0
				]
			]
,			[
				[400, 32, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				20,
				188,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[160, 32, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				21,
				193,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 32, 0, 48, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				11,
				869,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[64, 64, 0, 48, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1063,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"1",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[160, 64, 0, 48, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1064,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"2",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[256, 64, 0, 48, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1065,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"3",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[352, 64, 0, 48, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1066,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"4",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[352, 224, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1067,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"12",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[256, 224, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1068,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"11",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[160, 224, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1069,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"10",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[64, 144, 0, 48, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1070,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"5",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[160, 144, 0, 48, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1071,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"6",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[256, 144, 0, 48, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1072,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"7",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[352, 144, 0, 48, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1073,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"8",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[64, 224, 0, 48, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1074,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"9",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
			],
			[			]
		]
,		[
			"Player",
			2,
			249461425416459,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Objects",
			3,
			7083059876412746,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Hud",
			4,
			600163981118203,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Episode2",
		480,
		320,
		false,
		"LevelSelect",
		4898430308250305,
		[
		[
			"Background",
			0,
			16163826078392,
			true,
			[255, 255, 255],
			false,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				116,
				205,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			6104174336458841,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[96, 96, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1108,
				[
					[13]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 96, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1109,
				[
					[14]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 96, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1110,
				[
					[15]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 96, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1111,
				[
					[16]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 176, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1114,
				[
					[20]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 176, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1115,
				[
					[19]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 176, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1116,
				[
					[18]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 176, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1117,
				[
					[17]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 256, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1118,
				[
					[21]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 256, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1119,
				[
					[22]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 256, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1120,
				[
					[23]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 256, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1121,
				[
					[24]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[172, 26, 0, 224, 32, 0, 0, 1, 0, 0, 0, 0, []],
				124,
				1122,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"Episode Two: Ruins",
					0.8,
					0,
					1,
					0,
					0,
					0,
					-2,
					0
				]
			]
,			[
				[400, 32, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				20,
				1123,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[160, 32, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				21,
				1124,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 32, 0, 48, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				11,
				1125,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			2,
			2644922403996307,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Objects",
			3,
			759908806056961,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Hud",
			4,
			2043313259822901,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[64, 64, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				306,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"13",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[160, 64, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1371,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"14",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[256, 64, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1372,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"15",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[352, 64, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1373,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"16",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[64, 144, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1374,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"17",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[160, 144, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1375,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"18",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[256, 144, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1376,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"19",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[352, 144, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1377,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"20",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[64, 224, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1378,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"21",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[160, 224, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1379,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"22",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[256, 224, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1380,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"23",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[352, 224, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				1381,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"24",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"Episode3",
		480,
		320,
		false,
		"LevelSelect",
		4488525540553997,
		[
		[
			"Background",
			0,
			1593172326649918,
			true,
			[255, 255, 255],
			false,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[0, 0, 0, 480, 320, 0, 0, 1, 0, 0, 0, 0, []],
				118,
				213,
				[
				],
				[
				],
				[
					0,
					0
				]
			]
			],
			[			]
		]
,		[
			"Level",
			1,
			6072877108646975,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[96, 96, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1201,
				[
					[25]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 96, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1202,
				[
					[26]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 96, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1203,
				[
					[27]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 96, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1204,
				[
					[28]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 176, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1205,
				[
					[32]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 176, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1206,
				[
					[31]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 176, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1207,
				[
					[30]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 176, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1208,
				[
					[29]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[96, 256, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1209,
				[
					[33]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[192, 256, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1210,
				[
					[34]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[288, 256, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1211,
				[
					[35]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[384, 256, 0, 64, 64, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				22,
				1212,
				[
					[36]
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[172, 20, 0, 224, 32, 0, 0, 1, 0, 0, 0, 0, []],
				124,
				1213,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"Episode Three: Volcano",
					0.8,
					0,
					1,
					0,
					0,
					0,
					-2,
					0
				]
			]
,			[
				[400, 32, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				20,
				1214,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[160, 32, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				21,
				1215,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[84, 32, 0, 48, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				11,
				1216,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Player",
			2,
			3360751960860135,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Objects",
			3,
			4926696969575232,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Hud",
			4,
			2258806105916013,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[64, 64, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				3253,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"25",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[160, 64, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				3254,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"26",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[256, 64, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				3255,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"27",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[352, 64, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				3256,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"28",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[64, 224, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				3257,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"33",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[160, 224, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				3258,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"34",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[256, 224, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				3259,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"35",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[352, 224, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				3260,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"36",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[64, 144, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				3263,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"29",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[160, 144, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				3264,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"30",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[256, 144, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				3265,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"31",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
,			[
				[352, 144, 0, 64, 48, 0, 0, 1, 0, 0, 0, 0, []],
				23,
				3266,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"32",
					1.5,
					0,
					1,
					1,
					0,
					0,
					-8,
					0
				]
			]
			],
			[			]
		]
		],
		[
		],
		[]
	]
,	[
		"HUD",
		480,
		320,
		false,
		"HUD",
		8901772161039028,
		[
		[
			"Background",
			0,
			9307628683331763,
			true,
			[0, 0, 0],
			false,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Level",
			1,
			3277331592131984,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Player",
			2,
			4968135384156206,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Objects",
			3,
			3533448090846011,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			],
			[			]
		]
,		[
			"Hud",
			4,
			1503755328718481,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[240, 160, 0, 200, 56, 0, 0, 0.800000011920929, 0.5, 0.5, 0, 0, []],
				16,
				1370,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[144, 144, 0, 192, 48, 0, 0, 1, 0, 0, 0, 0, []],
				17,
				28,
				[
				],
				[
				],
				[
					16,
					16,
					"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@°+=*$£€<>",
					"",
					1,
					1,
					1,
					0,
					0,
					0,
					0,
					0
				]
			]
,			[
				[456, 24, 0, 32, 32, 0, 0, 0.5, 0.5, 0.5, 0, 0, []],
				12,
				1346,
				[
				],
				[
				],
				[
					0,
					"Default",
					0,
					1
				]
			]
,			[
				[240, 160, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				15,
				1367,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[176, 160, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				14,
				1368,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[304, 160, 0, 32, 32, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				13,
				1369,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
,		[
			"Controls",
			5,
			2810598327720271,
			true,
			[255, 255, 255],
			true,
			1,
			1,
			1,
			false,
			1,
			0,
			0,
			[
			[
				[120, 160, 0, 240, 320, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				18,
				46,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
,			[
				[360, 160, 0, 240, 320, 0, 0, 1, 0.5, 0.5, 0, 0, []],
				19,
				47,
				[
				],
				[
				],
				[
					1,
					"Default",
					0,
					1
				]
			]
			],
			[			]
		]
		],
		[
		],
		[]
	]
	],
	[
	[
		"Levels",
		[
		[
			1,
			"hasDied",
			0,
			0,
false,false,4577744710506679,false
		]
,		[
			2,
			"Common",
			false
		]
,		[
			0,
			null,
			false,
			null,
			9340097269018619,
			[
			[
				-1,
				cr.system_object.prototype.cnds.OnLayoutStart,
				null,
				1,
				false,
				false,
				false,
				4621803740093334,
				false
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.SetVar,
				null,
				1741259260650266,
				false
				,[
				[
					11,
					"cPixels"
				]
,				[
					7,
					[
						0,
						0
					]
				]
				]
			]
,			[
				-1,
				cr.system_object.prototype.acts.SetVar,
				null,
				2662778954039379,
				false
				,[
				[
					11,
					"canExit"
				]
,				[
					7,
					[
						0,
						0
					]
				]
				]
			]
,			[
				-1,
				cr.system_object.prototype.acts.SetVar,
				null,
				1693597964895959,
				false
				,[
				[
					11,
					"portalActive"
				]
,				[
					7,
					[
						0,
						0
					]
				]
				]
			]
,			[
				-1,
				cr.system_object.prototype.acts.SetVar,
				null,
				5693055626577662,
				false
				,[
				[
					11,
					"hasDisarm"
				]
,				[
					7,
					[
						0,
						0
					]
				]
				]
			]
,			[
				-1,
				cr.system_object.prototype.acts.SetVar,
				null,
				8245367108692644,
				false
				,[
				[
					11,
					"hasKey"
				]
,				[
					7,
					[
						0,
						0
					]
				]
				]
			]
,			[
				12,
				cr.plugins_.Sprite.prototype.acts.SetVisible,
				null,
				6860175145337088,
				false
				,[
				[
					3,
					1
				]
				]
			]
			]
			,[
			[
				0,
				null,
				false,
				null,
				1119918967788802,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					6676976502235142,
					false
					,[
					[
						11,
						"hasDied"
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							0,
							1
						]
					]
					]
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					1001724356420615,
					false
					,[
					[
						1,
						[
							2,
							"message"
						]
					]
,					[
						13,
													[
								7,
								[
									2,
									"Oops! You died."
								]
							]
					]
					]
				]
,				[
					-1,
					cr.system_object.prototype.acts.Wait,
					null,
					5745633982330138,
					false
					,[
					[
						0,
						[
							0,
							3
						]
					]
					]
				]
,				[
					-1,
					cr.system_object.prototype.acts.SetVar,
					null,
					4001198867220481,
					false
					,[
					[
						11,
						"hasDied"
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
,				[
					-1,
					cr.system_object.prototype.acts.SetVar,
					null,
					1055006286310347,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				8443359037907268,
				[
				[
					126,
					cr.plugins_.WebStorage.prototype.cnds.LocalStorageExists,
					null,
					0,
					false,
					true,
					false,
					7570864919856099,
					false
					,[
					[
						1,
						[
							2,
							"seenTutorial"
						]
					]
					]
				]
				],
				[
				]
			]
,			[
				0,
				null,
				false,
				null,
				1436961126006115,
				[
				[
					-1,
					cr.system_object.prototype.cnds.ForEach,
					null,
					0,
					true,
					false,
					false,
					1858578864052248,
					false
					,[
					[
						4,
						115
					]
					]
				]
				],
				[
				[
					115,
					cr.behaviors.Timer.prototype.acts.StartTimer,
					"Timer",
					6428980661734242,
					false
					,[
					[
						0,
						[
							21,
							115,
							false,
							null
							,0
						]
					]
,					[
						3,
						1
					]
,					[
						1,
						[
							2,
							"ele1"
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			2847849425781073,
			[
			[
				-1,
				cr.system_object.prototype.cnds.CompareVar,
				null,
				0,
				false,
				false,
				false,
				6218019656113519,
				false
				,[
				[
					11,
					"cPixels"
				]
,				[
					8,
					0
				]
,				[
					7,
					[
						0,
						5
					]
				]
				]
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.SetVar,
				null,
				5525278708965961,
				false
				,[
				[
					11,
					"canExit"
				]
,				[
					7,
					[
						0,
						1
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			4096989325731908,
			[
			[
				114,
				cr.plugins_.Sprite.prototype.cnds.IsOverlapping,
				null,
				0,
				false,
				true,
				false,
				7729491625827535,
				false
				,[
				[
					4,
					94
				]
				]
			]
,			[
				-1,
				cr.system_object.prototype.cnds.CompareVar,
				null,
				0,
				false,
				false,
				false,
				1154812240996522,
				false
				,[
				[
					11,
					"portalActive"
				]
,				[
					8,
					0
				]
,				[
					7,
					[
						0,
						1
					]
				]
				]
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.Wait,
				null,
				229532889766675,
				false
				,[
				[
					0,
					[
						1,
						0.2
					]
				]
				]
			]
,			[
				-1,
				cr.system_object.prototype.acts.SetVar,
				null,
				5531386162781273,
				false
				,[
				[
					11,
					"portalActive"
				]
,				[
					7,
					[
						0,
						0
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			2953247266178647,
			[
			[
				114,
				cr.plugins_.Sprite.prototype.cnds.IsOverlapping,
				null,
				0,
				false,
				false,
				false,
				6385744057273283,
				false
				,[
				[
					4,
					95
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				9930707472749449,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					9159951005900814,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				]
				,[
				[
					0,
					null,
					false,
					null,
					536950505381568,
					[
					[
						-1,
						cr.system_object.prototype.cnds.TriggerOnce,
						null,
						0,
						false,
						false,
						false,
						6975531877264223,
						false
					]
					],
					[
					[
						127,
						cr.plugins_.Function.prototype.acts.CallFunction,
						null,
						3804640778854996,
						false
						,[
						[
							1,
							[
								2,
								"PlaySound"
							]
						]
,						[
							13,
															[
									7,
									[
										2,
										"enterportal"
									]
								]
,
								[
									7,
									[
										0,
										0
									]
								]
						]
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				3122910783862593,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					3429668096458642,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.SetVar,
					null,
					2031083065812011,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						7,
						[
							0,
							1
						]
					]
					]
				]
,				[
					114,
					cr.plugins_.Sprite.prototype.acts.SetPosToObject,
					null,
					4284489585200733,
					false
					,[
					[
						4,
						96
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			4780811663096266,
			[
			[
				114,
				cr.plugins_.Sprite.prototype.cnds.IsOverlapping,
				null,
				0,
				false,
				false,
				false,
				6598804821430078,
				false
				,[
				[
					4,
					96
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				2801297654707841,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					3723741157603214,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				]
				,[
				[
					0,
					null,
					false,
					null,
					1435596444643587,
					[
					[
						-1,
						cr.system_object.prototype.cnds.TriggerOnce,
						null,
						0,
						false,
						false,
						false,
						6996166662517583,
						false
					]
					],
					[
					[
						127,
						cr.plugins_.Function.prototype.acts.CallFunction,
						null,
						7344098938977737,
						false
						,[
						[
							1,
							[
								2,
								"PlaySound"
							]
						]
,						[
							13,
															[
									7,
									[
										2,
										"enterportal"
									]
								]
,
								[
									7,
									[
										0,
										0
									]
								]
						]
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				2002960596237242,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					8330142193015378,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.SetVar,
					null,
					6411340168701642,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						7,
						[
							0,
							1
						]
					]
					]
				]
,				[
					114,
					cr.plugins_.Sprite.prototype.acts.SetPosToObject,
					null,
					9723636923443447,
					false
					,[
					[
						4,
						95
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			1729741958364084,
			[
			[
				114,
				cr.plugins_.Sprite.prototype.cnds.IsOverlapping,
				null,
				0,
				false,
				false,
				false,
				8534876753604569,
				false
				,[
				[
					4,
					97
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				3463368757243479,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					4176487975873995,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				]
				,[
				[
					0,
					null,
					false,
					null,
					5101687317309824,
					[
					[
						-1,
						cr.system_object.prototype.cnds.TriggerOnce,
						null,
						0,
						false,
						false,
						false,
						2958281743296497,
						false
					]
					],
					[
					[
						127,
						cr.plugins_.Function.prototype.acts.CallFunction,
						null,
						3343594554455457,
						false
						,[
						[
							1,
							[
								2,
								"PlaySound"
							]
						]
,						[
							13,
															[
									7,
									[
										2,
										"enterportal"
									]
								]
,
								[
									7,
									[
										0,
										0
									]
								]
						]
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				3036508105858469,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					3539575237980081,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.SetVar,
					null,
					2499754733518067,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						7,
						[
							0,
							1
						]
					]
					]
				]
,				[
					114,
					cr.plugins_.Sprite.prototype.acts.SetPosToObject,
					null,
					806679247943008,
					false
					,[
					[
						4,
						98
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			8226942950315224,
			[
			[
				114,
				cr.plugins_.Sprite.prototype.cnds.IsOverlapping,
				null,
				0,
				false,
				false,
				false,
				533628493401503,
				false
				,[
				[
					4,
					98
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				7713021721878135,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					6987664217271873,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				]
				,[
				[
					0,
					null,
					false,
					null,
					5646482520123601,
					[
					[
						-1,
						cr.system_object.prototype.cnds.TriggerOnce,
						null,
						0,
						false,
						false,
						false,
						9817693793835466,
						false
					]
					],
					[
					[
						127,
						cr.plugins_.Function.prototype.acts.CallFunction,
						null,
						8275159440461205,
						false
						,[
						[
							1,
							[
								2,
								"PlaySound"
							]
						]
,						[
							13,
															[
									7,
									[
										2,
										"enterportal"
									]
								]
,
								[
									7,
									[
										0,
										0
									]
								]
						]
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				7037038579598854,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					7996038040583204,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.SetVar,
					null,
					5561945654497937,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						7,
						[
							0,
							1
						]
					]
					]
				]
,				[
					114,
					cr.plugins_.Sprite.prototype.acts.SetPosToObject,
					null,
					4792738598805583,
					false
					,[
					[
						4,
						97
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			1502207718703801,
			[
			[
				114,
				cr.plugins_.Sprite.prototype.cnds.IsOverlapping,
				null,
				0,
				false,
				false,
				false,
				911327475465899,
				false
				,[
				[
					4,
					100
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				9567737100267581,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					6029916165898366,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				]
				,[
				[
					0,
					null,
					false,
					null,
					951454153435988,
					[
					[
						-1,
						cr.system_object.prototype.cnds.TriggerOnce,
						null,
						0,
						false,
						false,
						false,
						4381021991094061,
						false
					]
					],
					[
					[
						127,
						cr.plugins_.Function.prototype.acts.CallFunction,
						null,
						3423168705343239,
						false
						,[
						[
							1,
							[
								2,
								"PlaySound"
							]
						]
,						[
							13,
															[
									7,
									[
										2,
										"enterportal"
									]
								]
,
								[
									7,
									[
										0,
										0
									]
								]
						]
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				7094730976211479,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					6677460449799576,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.SetVar,
					null,
					5515926711989922,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						7,
						[
							0,
							1
						]
					]
					]
				]
,				[
					114,
					cr.plugins_.Sprite.prototype.acts.SetPosToObject,
					null,
					9735860832159517,
					false
					,[
					[
						4,
						99
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			3342390703804695,
			[
			[
				114,
				cr.plugins_.Sprite.prototype.cnds.IsOverlapping,
				null,
				0,
				false,
				false,
				false,
				876725703123992,
				false
				,[
				[
					4,
					99
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				5213516625175361,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					8273844893283241,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				]
				,[
				[
					0,
					null,
					false,
					null,
					1517775954672826,
					[
					[
						-1,
						cr.system_object.prototype.cnds.TriggerOnce,
						null,
						0,
						false,
						false,
						false,
						371122090635606,
						false
					]
					],
					[
					[
						127,
						cr.plugins_.Function.prototype.acts.CallFunction,
						null,
						7599346745525243,
						false
						,[
						[
							1,
							[
								2,
								"PlaySound"
							]
						]
,						[
							13,
															[
									7,
									[
										2,
										"enterportal"
									]
								]
,
								[
									7,
									[
										0,
										0
									]
								]
						]
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				992550977405029,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					5413996526304934,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.SetVar,
					null,
					6053270574736366,
					false
					,[
					[
						11,
						"portalActive"
					]
,					[
						7,
						[
							0,
							1
						]
					]
					]
				]
,				[
					114,
					cr.plugins_.Sprite.prototype.acts.SetPosToObject,
					null,
					9289747829098309,
					false
					,[
					[
						4,
						99
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			8267298143560012,
			[
			[
				115,
				cr.behaviors.Timer.prototype.cnds.OnTimer,
				"Timer",
				0,
				false,
				false,
				false,
				9647144729593366,
				false
				,[
				[
					1,
					[
						2,
						"ele1"
					]
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				997100206809146,
				[
				[
					-1,
					cr.system_object.prototype.cnds.ForEach,
					null,
					0,
					true,
					false,
					false,
					3729565576495473,
					false
					,[
					[
						4,
						115
					]
					]
				]
				],
				[
				[
					115,
					cr.plugins_.Sprite.prototype.acts.SetVisible,
					null,
					5907712069261722,
					false
					,[
					[
						3,
						0
					]
					]
				]
,				[
					-1,
					cr.system_object.prototype.acts.Wait,
					null,
					1527976637615945,
					false
					,[
					[
						0,
						[
							21,
							115,
							false,
							null
							,1
						]
					]
					]
				]
,				[
					115,
					cr.plugins_.Sprite.prototype.acts.SetVisible,
					null,
					668073460737531,
					false
					,[
					[
						3,
						1
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			7958025912583663,
			[
			[
				-1,
				cr.system_object.prototype.cnds.EveryTick,
				null,
				0,
				false,
				false,
				false,
				9781784335836382,
				false
			]
			],
			[
			]
		]
		]
	]
,	[
		"Loader",
		[
		[
			0,
			null,
			false,
			null,
			4081344106441001,
			[
			[
				-1,
				cr.system_object.prototype.cnds.EveryTick,
				null,
				0,
				false,
				false,
				false,
				3323855376532145,
				false
			]
			],
			[
			[
				1,
				cr.plugins_.Text.prototype.acts.SetText,
				null,
				8400612300413851,
				false
				,[
				[
					7,
					[
						10,
						[
							10,
							[
								2,
								"Loading: "
							]
							,[
								19,
								cr.system_object.prototype.exps.round
								,[
[
									6,
									[
										19,
										cr.system_object.prototype.exps.loadingprogress
									]
									,[
										0,
										100
									]
								]
								]
							]
						]
						,[
							2,
							"%"
						]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			1327361789892072,
			[
			[
				-1,
				cr.system_object.prototype.cnds.OnLoadFinished,
				null,
				1,
				false,
				false,
				false,
				3511869505037673,
				false
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.GoToLayout,
				null,
				7566370242327644,
				false
				,[
				[
					6,
					"Splash"
				]
				]
			]
			]
		]
		]
	]
,	[
		"Splash",
		[
		[
			2,
			"Audio",
			false
		]
,		[
			0,
			null,
			false,
			null,
			9287190789065767,
			[
			[
				-1,
				cr.system_object.prototype.cnds.OnLayoutStart,
				null,
				1,
				false,
				false,
				false,
				2415840338632538,
				false
			]
			],
			[
			[
				12,
				cr.plugins_.Sprite.prototype.acts.SetVisible,
				null,
				1019797403479116,
				false
				,[
				[
					3,
					0
				]
				]
			]
			]
			,[
			[
				0,
				null,
				false,
				null,
				801024262165926,
				[
				[
					128,
					cr.plugins_.Audio.prototype.cnds.IsSilent,
					null,
					0,
					false,
					false,
					false,
					3661550156412883,
					false
				]
				],
				[
				[
					141,
					cr.plugins_.Sprite.prototype.acts.SetAnimFrame,
					null,
					2290198506692057,
					false
					,[
					[
						0,
						[
							0,
							1
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				9255174525058084,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					6383808192284447,
					false
				]
				],
				[
				[
					141,
					cr.plugins_.Sprite.prototype.acts.SetAnimFrame,
					null,
					7543739958619137,
					false
					,[
					[
						0,
						[
							0,
							0
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				3028232477014371,
				[
				[
					126,
					cr.plugins_.WebStorage.prototype.cnds.CompareKeyText,
					null,
					0,
					false,
					false,
					false,
					6652288321563168,
					false
					,[
					[
						1,
						[
							2,
							"music"
						]
					]
,					[
						1,
						[
							2,
							"off"
						]
					]
,					[
						3,
						0
					]
					]
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					9460433653117436,
					false
					,[
					[
						1,
						[
							2,
							"StopMusic"
						]
					]
,					[
						13,
													[
								7,
								[
									2,
									"Izzy Invert"
								]
							]
					]
					]
				]
,				[
					140,
					cr.plugins_.Sprite.prototype.acts.SetAnimFrame,
					null,
					9351939705275881,
					false
					,[
					[
						0,
						[
							0,
							1
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				5332678861323914,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					2668836257710422,
					false
				]
,				[
					128,
					cr.plugins_.Audio.prototype.cnds.IsTagPlaying,
					null,
					0,
					false,
					true,
					false,
					5922773157180592,
					false
					,[
					[
						1,
						[
							2,
							"Izzy Invert"
						]
					]
					]
				]
				],
				[
				]
				,[
				[
					0,
					null,
					false,
					null,
					3057293156000391,
					[
					[
						-1,
						cr.system_object.prototype.cnds.TriggerOnce,
						null,
						0,
						false,
						false,
						false,
						1056185323250095,
						false
					]
					],
					[
					[
						127,
						cr.plugins_.Function.prototype.acts.CallFunction,
						null,
						170193047275711,
						false
						,[
						[
							1,
							[
								2,
								"PlayMusic"
							]
						]
,						[
							13,
															[
									7,
									[
										2,
										"Izzy Invert"
									]
								]
,
								[
									7,
									[
										0,
										-5
									]
								]
						]
						]
					]
,					[
						140,
						cr.plugins_.Sprite.prototype.acts.SetAnimFrame,
						null,
						6511025963580385,
						false
						,[
						[
							0,
							[
								0,
								0
							]
						]
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			645600350260159,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				6976986051747093,
				false
				,[
				[
					4,
					3
				]
				]
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.GoToLayout,
				null,
				3457501332567434,
				false
				,[
				[
					6,
					"Episode1"
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			3628506674252338,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				5603757105956144,
				false
				,[
				[
					4,
					8
				]
				]
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.GoToLayout,
				null,
				7859815749744021,
				false
				,[
				[
					6,
					"HowTo"
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			3720646064382581,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				9342052264043435,
				false
				,[
				[
					4,
					6
				]
				]
			]
			],
			[
			[
				123,
				cr.plugins_.Browser.prototype.acts.RequestFullScreen,
				null,
				6138691248094275,
				false
				,[
				[
					3,
					4
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			9892174691401052,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				4361379063517206,
				false
				,[
				[
					4,
					7
				]
				]
			]
			],
			[
			[
				126,
				cr.plugins_.WebStorage.prototype.acts.RemoveLocal,
				null,
				7703366484548575,
				false
				,[
				[
					1,
					[
						2,
						"hasUserPlayed"
					]
				]
				]
			]
,			[
				126,
				cr.plugins_.WebStorage.prototype.acts.RemoveLocal,
				null,
				1963598581280131,
				false
				,[
				[
					1,
					[
						2,
						"music"
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			6873859083083362,
			[
			[
				-1,
				cr.system_object.prototype.cnds.Compare,
				null,
				0,
				false,
				false,
				false,
				1727480079128044,
				false
				,[
				[
					7,
					[
						20,
						4,
						cr.plugins_.Sprite.prototype.exps.X,
						false,
						null
					]
				]
,				[
					8,
					2
				]
,				[
					7,
					[
						5,
						[
							20,
							131,
							cr.plugins_.Mouse.prototype.exps.X,
							false,
							null
						]
						,[
							0,
							12
						]
					]
				]
				]
			]
			],
			[
			[
				4,
				cr.behaviors.Platform.prototype.acts.SimulateControl,
				"Platform",
				5024340593021708,
				false
				,[
				[
					3,
					1
				]
				]
			]
,			[
				4,
				cr.plugins_.Sprite.prototype.acts.SetMirrored,
				null,
				9145403525457564,
				false
				,[
				[
					3,
					1
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			9053723334339195,
			[
			[
				-1,
				cr.system_object.prototype.cnds.Else,
				null,
				0,
				false,
				false,
				false,
				2014717710171612,
				false
			]
,			[
				-1,
				cr.system_object.prototype.cnds.Compare,
				null,
				0,
				false,
				false,
				false,
				9172137784675155,
				false
				,[
				[
					7,
					[
						20,
						4,
						cr.plugins_.Sprite.prototype.exps.X,
						false,
						null
					]
				]
,				[
					8,
					4
				]
,				[
					7,
					[
						4,
						[
							20,
							131,
							cr.plugins_.Mouse.prototype.exps.X,
							false,
							null
						]
						,[
							0,
							12
						]
					]
				]
				]
			]
			],
			[
			[
				4,
				cr.behaviors.Platform.prototype.acts.SimulateControl,
				"Platform",
				3358009707832716,
				false
				,[
				[
					3,
					0
				]
				]
			]
,			[
				4,
				cr.plugins_.Sprite.prototype.acts.SetMirrored,
				null,
				3447610286838881,
				false
				,[
				[
					3,
					0
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			4788851289938551,
			[
			[
				132,
				cr.plugins_.gamepad.prototype.cnds.OnButtonDown,
				null,
				0,
				false,
				false,
				false,
				1223492014056625,
				false
				,[
				[
					0,
					[
						0,
						0
					]
				]
,				[
					3,
					9
				]
				]
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.GoToLayout,
				null,
				9088081182087628,
				false
				,[
				[
					6,
					"Episode1"
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			3371799561790711,
			[
			[
				132,
				cr.plugins_.gamepad.prototype.cnds.OnButtonDown,
				null,
				0,
				false,
				false,
				false,
				6909865395518236,
				false
				,[
				[
					0,
					[
						0,
						0
					]
				]
,				[
					3,
					2
				]
				]
			]
			],
			[
			[
				126,
				cr.plugins_.WebStorage.prototype.acts.RemoveLocal,
				null,
				2893804125120845,
				false
				,[
				[
					1,
					[
						2,
						"hasUserPlayed"
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			141962852041983,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				2542975341919848,
				false
				,[
				[
					4,
					141
				]
				]
			]
			],
			[
			[
				128,
				cr.plugins_.Audio.prototype.acts.SetSilent,
				null,
				7473403607192461,
				false
				,[
				[
					3,
					2
				]
				]
			]
			]
			,[
			[
				0,
				null,
				false,
				null,
				2648411363736149,
				[
				[
					141,
					cr.plugins_.Sprite.prototype.cnds.CompareFrame,
					null,
					0,
					false,
					false,
					false,
					6312092555541226,
					false
					,[
					[
						8,
						0
					]
,					[
						0,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				[
					140,
					cr.plugins_.Sprite.prototype.acts.SetAnimFrame,
					null,
					9894738217589439,
					false
					,[
					[
						0,
						[
							0,
							1
						]
					]
					]
				]
,				[
					141,
					cr.plugins_.Sprite.prototype.acts.SetAnimFrame,
					null,
					7716454544783635,
					false
					,[
					[
						0,
						[
							0,
							1
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				8776533633902389,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					4138451306292426,
					false
				]
				],
				[
				[
					140,
					cr.plugins_.Sprite.prototype.acts.SetAnimFrame,
					null,
					5919342899910265,
					false
					,[
					[
						0,
						[
							0,
							0
						]
					]
					]
				]
,				[
					141,
					cr.plugins_.Sprite.prototype.acts.SetAnimFrame,
					null,
					172678714598275,
					false
					,[
					[
						0,
						[
							0,
							0
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			9718007422027677,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				3509422621285486,
				false
				,[
				[
					4,
					140
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				5695963907796603,
				[
				[
					140,
					cr.plugins_.Sprite.prototype.cnds.CompareFrame,
					null,
					0,
					false,
					false,
					false,
					835265381428985,
					false
					,[
					[
						8,
						0
					]
,					[
						0,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				[
					140,
					cr.plugins_.Sprite.prototype.acts.SetAnimFrame,
					null,
					7839938194122553,
					false
					,[
					[
						0,
						[
							0,
							1
						]
					]
					]
				]
,				[
					126,
					cr.plugins_.WebStorage.prototype.acts.StoreLocal,
					null,
					3188443842467321,
					false
					,[
					[
						1,
						[
							2,
							"music"
						]
					]
,					[
						7,
						[
							2,
							"off"
						]
					]
					]
				]
,				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					7597254721846052,
					false
					,[
					[
						1,
						[
							2,
							"StopMusic"
						]
					]
,					[
						13,
													[
								7,
								[
									2,
									"Izzy Invert"
								]
							]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				5903890899733441,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					2793744034860251,
					false
				]
,				[
					141,
					cr.plugins_.Sprite.prototype.cnds.CompareFrame,
					null,
					0,
					false,
					false,
					false,
					7818784443636464,
					false
					,[
					[
						8,
						0
					]
,					[
						0,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				[
					140,
					cr.plugins_.Sprite.prototype.acts.SetAnimFrame,
					null,
					8045377003349314,
					false
					,[
					[
						0,
						[
							0,
							0
						]
					]
					]
				]
,				[
					126,
					cr.plugins_.WebStorage.prototype.acts.StoreLocal,
					null,
					7819106655927775,
					false
					,[
					[
						1,
						[
							2,
							"music"
						]
					]
,					[
						7,
						[
							2,
							"on"
						]
					]
					]
				]
,				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					1922367802715306,
					false
					,[
					[
						1,
						[
							2,
							"PlayMusic"
						]
					]
,					[
						13,
													[
								7,
								[
									2,
									"Izzy Invert"
								]
							]
,
							[
								7,
								[
									0,
									-5
								]
							]
					]
					]
				]
				]
			]
			]
		]
		]
	]
,	[
		"LevelSelect",
		[
		[
			2,
			"Common",
			false
		]
,		[
			0,
			null,
			false,
			null,
			7069348485992594,
			[
			[
				-1,
				cr.system_object.prototype.cnds.OnLayoutStart,
				null,
				1,
				false,
				false,
				false,
				5484304514892841,
				false
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.SetVar,
				null,
				9447162649292649,
				false
				,[
				[
					11,
					"targetLevel"
				]
,				[
					7,
					[
						0,
						0
					]
				]
				]
			]
,			[
				12,
				cr.plugins_.Sprite.prototype.acts.SetVisible,
				null,
				4535358696869811,
				false
				,[
				[
					3,
					0
				]
				]
			]
			]
			,[
			[
				0,
				null,
				false,
				null,
				2857976832934342,
				[
				[
					126,
					cr.plugins_.WebStorage.prototype.cnds.LocalStorageExists,
					null,
					0,
					false,
					true,
					false,
					617199163101551,
					false
					,[
					[
						1,
						[
							2,
							"hasUserPlayed"
						]
					]
					]
				]
				],
				[
				[
					126,
					cr.plugins_.WebStorage.prototype.acts.StoreLocal,
					null,
					159470159592011,
					false
					,[
					[
						1,
						[
							2,
							"hasUserPlayed"
						]
					]
,					[
						7,
						[
							2,
							"1"
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			1104380146751904,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				7547135607779258,
				false
				,[
				[
					4,
					22
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				5367039907139856,
				[
				[
					22,
					cr.plugins_.Sprite.prototype.cnds.CompareFrame,
					null,
					0,
					false,
					false,
					false,
					3625917421800244,
					false
					,[
					[
						8,
						1
					]
,					[
						0,
						[
							0,
							0
						]
					]
					]
				]
,				[
					22,
					cr.plugins_.Sprite.prototype.cnds.IsVisible,
					null,
					0,
					false,
					false,
					false,
					8598479315991663,
					false
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.SetVar,
					null,
					4715196927068373,
					false
					,[
					[
						11,
						"lastEpisode"
					]
,					[
						7,
						[
							19,
							cr.system_object.prototype.exps.layoutname
						]
					]
					]
				]
,				[
					-1,
					cr.system_object.prototype.acts.SetVar,
					null,
					8388553909476822,
					false
					,[
					[
						11,
						"targetLevel"
					]
,					[
						7,
						[
							21,
							22,
							false,
							null
							,0
						]
					]
					]
				]
,				[
					-1,
					cr.system_object.prototype.acts.GoToLayout,
					null,
					2139279006432695,
					false
					,[
					[
						6,
						"HUD"
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			860174125389257,
			[
			[
				22,
				cr.plugins_.Sprite.prototype.cnds.CompareInstanceVar,
				null,
				0,
				false,
				false,
				false,
				6015278193539512,
				false
				,[
				[
					10,
					0
				]
,				[
					8,
					3
				]
,				[
					7,
					[
						19,
						cr.system_object.prototype.exps["int"]
						,[
[
							20,
							126,
							cr.plugins_.WebStorage.prototype.exps.LocalValue,
							true,
							null
							,[
[
								2,
								"hasUserPlayed"
							]
							]
						]
						]
					]
				]
				]
			]
			],
			[
			[
				22,
				cr.plugins_.Sprite.prototype.acts.SetAnimFrame,
				null,
				5466664131045968,
				false
				,[
				[
					0,
					[
						0,
						1
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			4502292877255539,
			[
			[
				22,
				cr.plugins_.Sprite.prototype.cnds.CompareInstanceVar,
				null,
				0,
				false,
				false,
				false,
				1852164030018138,
				false
				,[
				[
					10,
					0
				]
,				[
					8,
					2
				]
,				[
					7,
					[
						19,
						cr.system_object.prototype.exps["int"]
						,[
[
							20,
							126,
							cr.plugins_.WebStorage.prototype.exps.LocalValue,
							true,
							null
							,[
[
								2,
								"hasUserPlayed"
							]
							]
						]
						]
					]
				]
				]
			]
			],
			[
			[
				22,
				cr.plugins_.Sprite.prototype.acts.SetAnimFrame,
				null,
				9188540941381543,
				false
				,[
				[
					0,
					[
						0,
						2
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			6505216277234421,
			[
			[
				127,
				cr.plugins_.Function.prototype.cnds.OnFunction,
				null,
				2,
				false,
				false,
				false,
				5724118620978133,
				false
				,[
				[
					1,
					[
						2,
						"toggleEpisode"
					]
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				4291395201569514,
				[
				[
					127,
					cr.plugins_.Function.prototype.cnds.CompareParam,
					null,
					0,
					false,
					false,
					false,
					6046787243092154,
					false
					,[
					[
						0,
						[
							0,
							0
						]
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							2,
							"one"
						]
					]
					]
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.GoToLayout,
					null,
					5821617227510757,
					false
					,[
					[
						6,
						"Episode1"
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				7346887107585809,
				[
				[
					127,
					cr.plugins_.Function.prototype.cnds.CompareParam,
					null,
					0,
					false,
					false,
					false,
					6149583471625841,
					false
					,[
					[
						0,
						[
							0,
							0
						]
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							2,
							"two"
						]
					]
					]
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.GoToLayout,
					null,
					3910697975023885,
					false
					,[
					[
						6,
						"Episode2"
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				5764729268969144,
				[
				[
					127,
					cr.plugins_.Function.prototype.cnds.CompareParam,
					null,
					0,
					false,
					false,
					false,
					7361213412130024,
					false
					,[
					[
						0,
						[
							0,
							0
						]
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							2,
							"three"
						]
					]
					]
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.GoToLayout,
					null,
					9449351645252279,
					false
					,[
					[
						6,
						"Episode3"
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			1349418890301961,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				1706426595596343,
				false
				,[
				[
					4,
					21
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				1234191531822767,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Compare,
					null,
					0,
					false,
					false,
					false,
					6911666452472365,
					false
					,[
					[
						7,
						[
							19,
							cr.system_object.prototype.exps.layoutname
						]
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							2,
							"Episode1"
						]
					]
					]
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					9235739002482176,
					false
					,[
					[
						1,
						[
							2,
							"toggleEpisode"
						]
					]
,					[
						13,
													[
								7,
								[
									2,
									"three"
								]
							]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				5552657865698849,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					8586319749679684,
					false
				]
,				[
					-1,
					cr.system_object.prototype.cnds.Compare,
					null,
					0,
					false,
					false,
					false,
					4502433226988429,
					false
					,[
					[
						7,
						[
							19,
							cr.system_object.prototype.exps.layoutname
						]
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							2,
							"Episode2"
						]
					]
					]
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					9701092064460623,
					false
					,[
					[
						1,
						[
							2,
							"toggleEpisode"
						]
					]
,					[
						13,
													[
								7,
								[
									2,
									"one"
								]
							]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				5600035230361144,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					5667487184155679,
					false
				]
,				[
					-1,
					cr.system_object.prototype.cnds.Compare,
					null,
					0,
					false,
					false,
					false,
					1121045998620544,
					false
					,[
					[
						7,
						[
							19,
							cr.system_object.prototype.exps.layoutname
						]
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							2,
							"Episode3"
						]
					]
					]
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					5494994425787251,
					false
					,[
					[
						1,
						[
							2,
							"toggleEpisode"
						]
					]
,					[
						13,
													[
								7,
								[
									2,
									"two"
								]
							]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			5500370651345719,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				8051046391651774,
				false
				,[
				[
					4,
					20
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				1129055831529426,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Compare,
					null,
					0,
					false,
					false,
					false,
					5230199583888707,
					false
					,[
					[
						7,
						[
							19,
							cr.system_object.prototype.exps.layoutname
						]
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							2,
							"Episode1"
						]
					]
					]
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					2536724026692954,
					false
					,[
					[
						1,
						[
							2,
							"toggleEpisode"
						]
					]
,					[
						13,
													[
								7,
								[
									2,
									"two"
								]
							]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				981313521753514,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					4216786317781301,
					false
				]
,				[
					-1,
					cr.system_object.prototype.cnds.Compare,
					null,
					0,
					false,
					false,
					false,
					7483724246229662,
					false
					,[
					[
						7,
						[
							19,
							cr.system_object.prototype.exps.layoutname
						]
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							2,
							"Episode2"
						]
					]
					]
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					1841569617778914,
					false
					,[
					[
						1,
						[
							2,
							"toggleEpisode"
						]
					]
,					[
						13,
													[
								7,
								[
									2,
									"three"
								]
							]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				2174624010696765,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					6363886694775213,
					false
				]
,				[
					-1,
					cr.system_object.prototype.cnds.Compare,
					null,
					0,
					false,
					false,
					false,
					4832301290031126,
					false
					,[
					[
						7,
						[
							19,
							cr.system_object.prototype.exps.layoutname
						]
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							2,
							"Episode3"
						]
					]
					]
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					9384525115817039,
					false
					,[
					[
						1,
						[
							2,
							"toggleEpisode"
						]
					]
,					[
						13,
													[
								7,
								[
									2,
									"one"
								]
							]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			373532037288834,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				4197958152076591,
				false
				,[
				[
					4,
					11
				]
				]
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.GoToLayout,
				null,
				9109111100476152,
				false
				,[
				[
					6,
					"Splash"
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			749293266869025,
			[
			[
				121,
				cr.plugins_.Keyboard.prototype.cnds.OnKey,
				null,
				1,
				false,
				false,
				false,
				8949832597337775,
				false
				,[
				[
					9,
					85
				]
				]
			]
			],
			[
			[
				126,
				cr.plugins_.WebStorage.prototype.acts.StoreLocal,
				null,
				318179379003012,
				false
				,[
				[
					1,
					[
						2,
						"hasUserPlayed"
					]
				]
,				[
					7,
					[
						2,
						"37"
					]
				]
				]
			]
			]
		]
		]
	]
,	[
		"HUD",
		[
		[
			2,
			"Common",
			false
		]
,		[
			0,
			null,
			false,
			null,
			6368417243857098,
			[
			[
				-1,
				cr.system_object.prototype.cnds.OnLayoutStart,
				null,
				1,
				false,
				false,
				false,
				3277372884897585,
				false
			]
			],
			[
			[
				17,
				cr.plugins_.Spritefont2.prototype.acts.SetVisible,
				null,
				8259508908987759,
				false
				,[
				[
					3,
					0
				]
				]
			]
			]
			,[
			[
				0,
				null,
				false,
				null,
				8713455236489452,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Compare,
					null,
					0,
					false,
					false,
					false,
					7195731546692037,
					false
					,[
					[
						7,
						[
							19,
							cr.system_object.prototype.exps.layoutname
						]
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							2,
							"HUD"
						]
					]
					]
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.GoToLayoutByName,
					null,
					7638255453920832,
					false
					,[
					[
						1,
						[
							10,
							[
								2,
								"Level"
							]
							,[
								23,
								"targetLevel"
							]
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			9105394658101122,
			[
			[
				127,
				cr.plugins_.Function.prototype.cnds.OnFunction,
				null,
				2,
				false,
				false,
				false,
				3639025666653664,
				false
				,[
				[
					1,
					[
						2,
						"menuoff"
					]
				]
				]
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.SetTimescale,
				null,
				9791018539021581,
				false
				,[
				[
					0,
					[
						0,
						1
					]
				]
				]
			]
,			[
				144,
				cr.plugins_.Sprite.prototype.acts.SetVisible,
				null,
				2897196716005236,
				false
				,[
				[
					3,
					0
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			3202593983246057,
			[
			[
				127,
				cr.plugins_.Function.prototype.cnds.OnFunction,
				null,
				2,
				false,
				false,
				false,
				4266106499006878,
				false
				,[
				[
					1,
					[
						2,
						"menuon"
					]
				]
				]
			]
			],
			[
			[
				144,
				cr.plugins_.Sprite.prototype.acts.SetVisible,
				null,
				5970350581510659,
				false
				,[
				[
					3,
					1
				]
				]
			]
,			[
				14,
				cr.plugins_.Sprite.prototype.acts.MoveToTop,
				null,
				5995227093525758,
				false
			]
,			[
				13,
				cr.plugins_.Sprite.prototype.acts.MoveToTop,
				null,
				7224736348893676,
				false
			]
,			[
				15,
				cr.plugins_.Sprite.prototype.acts.MoveToTop,
				null,
				6514574457887044,
				false
			]
,			[
				-1,
				cr.system_object.prototype.acts.SetTimescale,
				null,
				6568654400484212,
				false
				,[
				[
					0,
					[
						0,
						0
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			5250621429650234,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				7895794905900073,
				false
				,[
				[
					4,
					12
				]
				]
			]
,			[
				12,
				cr.plugins_.Sprite.prototype.cnds.IsVisible,
				null,
				0,
				false,
				false,
				false,
				9769674271688998,
				false
			]
			],
			[
			[
				123,
				cr.plugins_.Browser.prototype.acts.ConsoleLog,
				null,
				6793135113832483,
				false
				,[
				[
					3,
					0
				]
,				[
					7,
					[
						2,
						"Menu pressed"
					]
				]
				]
			]
			]
			,[
			[
				0,
				null,
				false,
				null,
				1779692062763205,
				[
				[
					144,
					cr.plugins_.Sprite.prototype.cnds.IsVisible,
					null,
					0,
					false,
					false,
					false,
					1476438073027378,
					false
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					2085465365774734,
					false
					,[
					[
						1,
						[
							2,
							"menuoff"
						]
					]
,					[
						13,
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				9735881818376666,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					8771075775109875,
					false
				]
,				[
					144,
					cr.plugins_.Sprite.prototype.cnds.IsVisible,
					null,
					0,
					false,
					true,
					false,
					1032475164731589,
					false
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					6518817820286683,
					false
					,[
					[
						1,
						[
							2,
							"menuon"
						]
					]
,					[
						13,
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			2783174074056489,
			[
			[
				121,
				cr.plugins_.Keyboard.prototype.cnds.OnKey,
				null,
				1,
				false,
				false,
				false,
				7151187979166054,
				false
				,[
				[
					9,
					66
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				5218823343498678,
				[
				[
					144,
					cr.plugins_.Sprite.prototype.cnds.IsVisible,
					null,
					0,
					false,
					false,
					false,
					1309600270910703,
					false
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					2904248437038326,
					false
					,[
					[
						1,
						[
							2,
							"menuoff"
						]
					]
,					[
						13,
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				5988379923496553,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					9592620067903893,
					false
				]
,				[
					144,
					cr.plugins_.Sprite.prototype.cnds.IsVisible,
					null,
					0,
					false,
					true,
					false,
					3923621072587218,
					false
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					1642382748367532,
					false
					,[
					[
						1,
						[
							2,
							"menuon"
						]
					]
,					[
						13,
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			812371081850717,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				9893793181031674,
				false
				,[
				[
					4,
					15
				]
				]
			]
,			[
				15,
				cr.plugins_.Sprite.prototype.cnds.IsVisible,
				null,
				0,
				false,
				false,
				false,
				6558865435414697,
				false
			]
			],
			[
			[
				127,
				cr.plugins_.Function.prototype.acts.CallFunction,
				null,
				4371098682044706,
				false
				,[
				[
					1,
					[
						2,
						"menuoff"
					]
				]
,				[
					13,
				]
				]
			]
,			[
				-1,
				cr.system_object.prototype.acts.GoToLayoutByName,
				null,
				3762756070743448,
				false
				,[
				[
					1,
					[
						23,
						"lastEpisode"
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			3556777966266001,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				7357117812010281,
				false
				,[
				[
					4,
					13
				]
				]
			]
,			[
				13,
				cr.plugins_.Sprite.prototype.cnds.IsVisible,
				null,
				0,
				false,
				false,
				false,
				1757742697887318,
				false
			]
			],
			[
			[
				127,
				cr.plugins_.Function.prototype.acts.CallFunction,
				null,
				4267375488895907,
				false
				,[
				[
					1,
					[
						2,
						"menuoff"
					]
				]
,				[
					13,
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			4415735075816172,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				4216626697596289,
				false
				,[
				[
					4,
					14
				]
				]
			]
,			[
				14,
				cr.plugins_.Sprite.prototype.cnds.IsVisible,
				null,
				0,
				false,
				false,
				false,
				7896997818082116,
				false
			]
			],
			[
			[
				127,
				cr.plugins_.Function.prototype.acts.CallFunction,
				null,
				2652292217749303,
				false
				,[
				[
					1,
					[
						2,
						"menuoff"
					]
				]
,				[
					13,
				]
				]
			]
,			[
				-1,
				cr.system_object.prototype.acts.RestartLayout,
				null,
				5459394386547156,
				false
			]
			]
		]
		]
	]
,	[
		"Common",
		[
		[
			2,
			"Audio",
			false
		]
,		[
			2,
			"HUD",
			false
		]
,		[
			1,
			"lastEpisode",
			1,
			"",
false,false,4696788785429382,false
		]
,		[
			1,
			"GRAVITY",
			0,
			1850,
false,true,4334032724260183,false
		]
,		[
			1,
			"portalActive",
			0,
			0,
false,false,6152356807149486,false
		]
,		[
			1,
			"hasDisarm",
			0,
			0,
false,false,6293248964194805,false
		]
,		[
			1,
			"hasKey",
			0,
			0,
false,false,6365271772947367,false
		]
,		[
			1,
			"targetLevel",
			0,
			0,
false,false,544221198788556,false
		]
,		[
			1,
			"canExit",
			0,
			0,
false,false,4080589826843168,false
		]
,		[
			1,
			"cPixels",
			0,
			0,
false,false,3131493921661916,false
		]
,		[
			0,
			[true, "Player"],
			false,
			null,
			2235852728842549,
			[
			[
				-1,
				cr.system_object.prototype.cnds.IsGroupActive,
				null,
				0,
				false,
				false,
				false,
				2235852728842549,
				false
				,[
				[
					1,
					[
						2,
						"Player"
					]
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				789908433640138,
				[
				[
					-1,
					cr.system_object.prototype.cnds.EveryTick,
					null,
					0,
					false,
					false,
					false,
					4795932316326326,
					false
				]
				],
				[
				]
				,[
				[
					0,
					null,
					false,
					null,
					25382865653577,
					[
					[
						112,
						cr.plugins_.Sprite.prototype.cnds.IsFlipped,
						null,
						0,
						false,
						false,
						false,
						5350815663414851,
						false
					]
					],
					[
					[
						112,
						cr.plugins_.Sprite.prototype.acts.SetPosToObject,
						null,
						9417615467802701,
						false
						,[
						[
							4,
							114
						]
,						[
							7,
							[
								0,
								1
							]
						]
						]
					]
					]
				]
,				[
					0,
					null,
					false,
					null,
					6773821754830626,
					[
					[
						-1,
						cr.system_object.prototype.cnds.Else,
						null,
						0,
						false,
						false,
						false,
						6518126259325077,
						false
					]
					],
					[
					[
						112,
						cr.plugins_.Sprite.prototype.acts.SetPosToObject,
						null,
						5627355271964502,
						false
						,[
						[
							4,
							114
						]
,						[
							7,
							[
								0,
								0
							]
						]
						]
					]
					]
				]
,				[
					0,
					null,
					false,
					null,
					9830537450441247,
					[
					[
						-1,
						cr.system_object.prototype.cnds.CompareVar,
						null,
						0,
						false,
						false,
						false,
						5713707802682245,
						false
						,[
						[
							11,
							"hasKey"
						]
,						[
							8,
							4
						]
,						[
							7,
							[
								0,
								0
							]
						]
						]
					]
					],
					[
					[
						138,
						cr.plugins_.Sprite.prototype.acts.SetVisible,
						null,
						7081763083098615,
						false
						,[
						[
							3,
							1
						]
						]
					]
,					[
						138,
						cr.plugins_.Sprite.prototype.acts.SetPosToObject,
						null,
						8729045641338789,
						false
						,[
						[
							4,
							112
						]
,						[
							7,
							[
								0,
								1
							]
						]
						]
					]
					]
				]
,				[
					0,
					null,
					false,
					null,
					7364393008574739,
					[
					[
						-1,
						cr.system_object.prototype.cnds.Else,
						null,
						0,
						false,
						false,
						false,
						3372857343692626,
						false
					]
					],
					[
					[
						138,
						cr.plugins_.Sprite.prototype.acts.SetVisible,
						null,
						7101304114350002,
						false
						,[
						[
							3,
							0
						]
						]
					]
					]
				]
,				[
					0,
					null,
					false,
					null,
					1837086386641367,
					[
					[
						-1,
						cr.system_object.prototype.cnds.CompareVar,
						null,
						0,
						false,
						false,
						false,
						1396299695143391,
						false
						,[
						[
							11,
							"hasDisarm"
						]
,						[
							8,
							5
						]
,						[
							7,
							[
								0,
								1
							]
						]
						]
					]
					],
					[
					[
						139,
						cr.plugins_.Sprite.prototype.acts.SetVisible,
						null,
						626849301277548,
						false
						,[
						[
							3,
							1
						]
						]
					]
,					[
						139,
						cr.plugins_.Sprite.prototype.acts.SetPosToObject,
						null,
						4793042491303148,
						false
						,[
						[
							4,
							112
						]
,						[
							7,
							[
								0,
								2
							]
						]
						]
					]
					]
				]
,				[
					0,
					null,
					false,
					null,
					6486754717879798,
					[
					[
						-1,
						cr.system_object.prototype.cnds.Else,
						null,
						0,
						false,
						false,
						false,
						1546666725027783,
						false
					]
					],
					[
					[
						139,
						cr.plugins_.Sprite.prototype.acts.SetVisible,
						null,
						5924663023421535,
						false
						,[
						[
							3,
							0
						]
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				619114527775615,
				[
				[
					121,
					cr.plugins_.Keyboard.prototype.cnds.OnKey,
					null,
					1,
					false,
					false,
					false,
					7530638289614381,
					false
					,[
					[
						9,
						37
					]
					]
				]
				],
				[
				[
					112,
					cr.plugins_.Sprite.prototype.acts.SetMirrored,
					null,
					6755379236393278,
					false
					,[
					[
						3,
						0
					]
					]
				]
,				[
					138,
					cr.plugins_.Sprite.prototype.acts.SetMirrored,
					null,
					1015115883010817,
					false
					,[
					[
						3,
						0
					]
					]
				]
,				[
					139,
					cr.plugins_.Sprite.prototype.acts.SetMirrored,
					null,
					9139546475455716,
					false
					,[
					[
						3,
						0
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				2458393779791861,
				[
				[
					121,
					cr.plugins_.Keyboard.prototype.cnds.OnKey,
					null,
					1,
					false,
					false,
					false,
					1442302305712618,
					false
					,[
					[
						9,
						39
					]
					]
				]
				],
				[
				[
					112,
					cr.plugins_.Sprite.prototype.acts.SetMirrored,
					null,
					9983659013080907,
					false
					,[
					[
						3,
						1
					]
					]
				]
,				[
					138,
					cr.plugins_.Sprite.prototype.acts.SetMirrored,
					null,
					8923152997238015,
					false
					,[
					[
						3,
						1
					]
					]
				]
,				[
					139,
					cr.plugins_.Sprite.prototype.acts.SetMirrored,
					null,
					1557161398560649,
					false
					,[
					[
						3,
						1
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				3256932815056343,
				[
				[
					121,
					cr.plugins_.Keyboard.prototype.cnds.IsKeyDown,
					null,
					0,
					false,
					false,
					false,
					2809178024125247,
					false
					,[
					[
						9,
						37
					]
					]
				]
				],
				[
				[
					114,
					cr.behaviors.Platform.prototype.acts.SimulateControl,
					"Platform",
					5144647147990057,
					false
					,[
					[
						3,
						0
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				8759923991090754,
				[
				[
					121,
					cr.plugins_.Keyboard.prototype.cnds.IsKeyDown,
					null,
					0,
					false,
					false,
					false,
					883896188782199,
					false
					,[
					[
						9,
						39
					]
					]
				]
				],
				[
				[
					114,
					cr.behaviors.Platform.prototype.acts.SimulateControl,
					"Platform",
					5928239736075366,
					false
					,[
					[
						3,
						1
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				3606086282163398,
				[
				[
					121,
					cr.plugins_.Keyboard.prototype.cnds.OnKey,
					null,
					1,
					false,
					false,
					false,
					7443165121416558,
					false
					,[
					[
						9,
						82
					]
					]
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.RestartLayout,
					null,
					1077791437659568,
					false
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				8331661707975442,
				[
				[
					121,
					cr.plugins_.Keyboard.prototype.cnds.OnKey,
					null,
					1,
					false,
					false,
					false,
					3156344020856164,
					false
					,[
					[
						9,
						71
					]
					]
				]
				],
				[
				]
				,[
				[
					0,
					null,
					false,
					null,
					3495799069988541,
					[
					[
						112,
						cr.plugins_.Sprite.prototype.cnds.IsFlipped,
						null,
						0,
						false,
						false,
						false,
						7666220827211627,
						false
					]
					],
					[
					[
						127,
						cr.plugins_.Function.prototype.acts.CallFunction,
						null,
						1050199919049293,
						false
						,[
						[
							1,
							[
								2,
								"gravdown"
							]
						]
,						[
							13,
						]
						]
					]
					]
				]
,				[
					0,
					null,
					false,
					null,
					4091958780057868,
					[
					[
						-1,
						cr.system_object.prototype.cnds.Else,
						null,
						0,
						false,
						false,
						false,
						9424375118908072,
						false
					]
					],
					[
					[
						127,
						cr.plugins_.Function.prototype.acts.CallFunction,
						null,
						7794453305702145,
						false
						,[
						[
							1,
							[
								2,
								"gravup"
							]
						]
,						[
							13,
						]
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				8538438861273289,
				[
				[
					132,
					cr.plugins_.gamepad.prototype.cnds.SupportsGamepad,
					null,
					0,
					false,
					false,
					false,
					9246932924210803,
					false
				]
,				[
					132,
					cr.plugins_.gamepad.prototype.cnds.HasGamepads,
					null,
					0,
					false,
					false,
					false,
					5394895733046467,
					false
				]
				],
				[
				]
				,[
				[
					0,
					null,
					false,
					null,
					8664814543551671,
					[
					[
						132,
						cr.plugins_.gamepad.prototype.cnds.CompareAxis,
						null,
						0,
						false,
						false,
						false,
						8372815887269733,
						false
						,[
						[
							0,
							[
								0,
								0
							]
						]
,						[
							3,
							0
						]
,						[
							8,
							2
						]
,						[
							0,
							[
								0,
								-25
							]
						]
						]
					]
					],
					[
					[
						114,
						cr.behaviors.Platform.prototype.acts.SimulateControl,
						"Platform",
						9755991473169919,
						false
						,[
						[
							3,
							0
						]
						]
					]
					]
					,[
					[
						0,
						null,
						false,
						null,
						340312505597948,
						[
						[
							-1,
							cr.system_object.prototype.cnds.TriggerOnce,
							null,
							0,
							false,
							false,
							false,
							380459958669625,
							false
						]
						],
						[
						[
							112,
							cr.plugins_.Sprite.prototype.acts.SetMirrored,
							null,
							6919626826680111,
							false
							,[
							[
								3,
								0
							]
							]
						]
						]
					]
					]
				]
,				[
					0,
					null,
					false,
					null,
					6859317967314352,
					[
					[
						132,
						cr.plugins_.gamepad.prototype.cnds.CompareAxis,
						null,
						0,
						false,
						false,
						false,
						8954487553863877,
						false
						,[
						[
							0,
							[
								0,
								0
							]
						]
,						[
							3,
							0
						]
,						[
							8,
							4
						]
,						[
							0,
							[
								0,
								25
							]
						]
						]
					]
					],
					[
					[
						114,
						cr.behaviors.Platform.prototype.acts.SimulateControl,
						"Platform",
						5411603283998267,
						false
						,[
						[
							3,
							1
						]
						]
					]
					]
					,[
					[
						0,
						null,
						false,
						null,
						1253279665854865,
						[
						[
							-1,
							cr.system_object.prototype.cnds.TriggerOnce,
							null,
							0,
							false,
							false,
							false,
							4061999281140406,
							false
						]
						],
						[
						[
							112,
							cr.plugins_.Sprite.prototype.acts.SetMirrored,
							null,
							3950770366414772,
							false
							,[
							[
								3,
								1
							]
							]
						]
						]
					]
					]
				]
,				[
					0,
					null,
					false,
					null,
					6606503056150975,
					[
					[
						132,
						cr.plugins_.gamepad.prototype.cnds.OnButtonDown,
						null,
						0,
						false,
						false,
						false,
						5373379014380051,
						false
						,[
						[
							0,
							[
								0,
								0
							]
						]
,						[
							3,
							0
						]
						]
					]
					],
					[
					]
					,[
					[
						0,
						null,
						false,
						null,
						3973208573273267,
						[
						[
							112,
							cr.plugins_.Sprite.prototype.cnds.IsFlipped,
							null,
							0,
							false,
							false,
							false,
							5912857140364819,
							false
						]
						],
						[
						[
							127,
							cr.plugins_.Function.prototype.acts.CallFunction,
							null,
							5727187519783532,
							false
							,[
							[
								1,
								[
									2,
									"gravdown"
								]
							]
,							[
								13,
							]
							]
						]
						]
					]
,					[
						0,
						null,
						false,
						null,
						7093366328529079,
						[
						[
							-1,
							cr.system_object.prototype.cnds.Else,
							null,
							0,
							false,
							false,
							false,
							7525356449648465,
							false
						]
						],
						[
						[
							127,
							cr.plugins_.Function.prototype.acts.CallFunction,
							null,
							7637974338399735,
							false
							,[
							[
								1,
								[
									2,
									"gravup"
								]
							]
,							[
								13,
							]
							]
						]
						]
					]
					]
				]
,				[
					0,
					null,
					false,
					null,
					5319076944245517,
					[
					[
						132,
						cr.plugins_.gamepad.prototype.cnds.OnButtonDown,
						null,
						0,
						false,
						false,
						false,
						2478468351215375,
						false
						,[
						[
							0,
							[
								0,
								0
							]
						]
,						[
							3,
							8
						]
						]
					]
					],
					[
					]
					,[
					[
						0,
						null,
						false,
						null,
						5022242037732599,
						[
						[
							-1,
							cr.system_object.prototype.cnds.Compare,
							null,
							0,
							false,
							false,
							false,
							1872586670897342,
							false
							,[
							[
								7,
								[
									19,
									cr.system_object.prototype.exps.layoutname
								]
							]
,							[
								8,
								0
							]
,							[
								7,
								[
									0,
									1
								]
							]
							]
						]
						],
						[
						[
							-1,
							cr.system_object.prototype.acts.GoToLayout,
							null,
							7357107170822228,
							false
							,[
							[
								6,
								"Splash"
							]
							]
						]
						]
					]
,					[
						0,
						null,
						false,
						null,
						5310842396033554,
						[
						[
							-1,
							cr.system_object.prototype.cnds.Else,
							null,
							0,
							false,
							false,
							false,
							8019920343958917,
							false
						]
						],
						[
						[
							-1,
							cr.system_object.prototype.acts.RestartLayout,
							null,
							4417332123004975,
							false
						]
						]
					]
					]
				]
,				[
					0,
					null,
					false,
					null,
					7511550403091307,
					[
					[
						132,
						cr.plugins_.gamepad.prototype.cnds.OnButtonDown,
						null,
						0,
						false,
						false,
						false,
						9264219031161085,
						false
						,[
						[
							0,
							[
								0,
								0
							]
						]
,						[
							3,
							9
						]
						]
					]
					],
					[
					]
					,[
					[
						0,
						null,
						false,
						null,
						8977079145005963,
						[
						[
							-1,
							cr.system_object.prototype.cnds.Compare,
							null,
							0,
							false,
							false,
							false,
							412253167120493,
							false
							,[
							[
								7,
								[
									19,
									cr.system_object.prototype.exps.layoutname
								]
							]
,							[
								8,
								0
							]
,							[
								7,
								[
									2,
									"Splash"
								]
							]
							]
						]
						],
						[
						[
							-1,
							cr.system_object.prototype.acts.GoToLayout,
							null,
							3656854157394782,
							false
							,[
							[
								6,
								"Episode1"
							]
							]
						]
						]
					]
,					[
						0,
						null,
						false,
						null,
						4600579497522726,
						[
						[
							-1,
							cr.system_object.prototype.cnds.Else,
							null,
							0,
							false,
							false,
							false,
							9078337988496045,
							false
						]
						],
						[
						[
							-1,
							cr.system_object.prototype.acts.GoToLayoutByName,
							null,
							8886962862418965,
							false
							,[
							[
								1,
								[
									23,
									"lastEpisode"
								]
							]
							]
						]
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				1010650869913134,
				[
				[
					-1,
					cr.system_object.prototype.cnds.IsMobile,
					null,
					0,
					false,
					false,
					false,
					4310164208311719,
					false
				]
				],
				[
				]
				,[
				[
					0,
					null,
					false,
					null,
					245380342837011,
					[
					[
						122,
						cr.plugins_.Touch.prototype.cnds.IsTouchingObject,
						null,
						0,
						false,
						false,
						false,
						5531117288518892,
						false
						,[
						[
							4,
							18
						]
						]
					]
,					[
						122,
						cr.plugins_.Touch.prototype.cnds.IsTouchingObject,
						null,
						0,
						false,
						true,
						false,
						9421040437797943,
						false
						,[
						[
							4,
							112
						]
						]
					]
					],
					[
					[
						112,
						cr.plugins_.Sprite.prototype.acts.SetMirrored,
						null,
						7551951989380158,
						false
						,[
						[
							3,
							0
						]
						]
					]
,					[
						138,
						cr.plugins_.Sprite.prototype.acts.SetMirrored,
						null,
						3836770753593639,
						false
						,[
						[
							3,
							0
						]
						]
					]
,					[
						139,
						cr.plugins_.Sprite.prototype.acts.SetMirrored,
						null,
						5357733616161624,
						false
						,[
						[
							3,
							0
						]
						]
					]
					]
				]
,				[
					0,
					null,
					false,
					null,
					9939792284427312,
					[
					[
						122,
						cr.plugins_.Touch.prototype.cnds.IsTouchingObject,
						null,
						0,
						false,
						false,
						false,
						8433873631539152,
						false
						,[
						[
							4,
							19
						]
						]
					]
,					[
						122,
						cr.plugins_.Touch.prototype.cnds.IsTouchingObject,
						null,
						0,
						false,
						true,
						false,
						5214719467769633,
						false
						,[
						[
							4,
							112
						]
						]
					]
					],
					[
					[
						112,
						cr.plugins_.Sprite.prototype.acts.SetMirrored,
						null,
						203607461044752,
						false
						,[
						[
							3,
							1
						]
						]
					]
,					[
						138,
						cr.plugins_.Sprite.prototype.acts.SetMirrored,
						null,
						5801325383176479,
						false
						,[
						[
							3,
							1
						]
						]
					]
,					[
						139,
						cr.plugins_.Sprite.prototype.acts.SetMirrored,
						null,
						120604591269506,
						false
						,[
						[
							3,
							1
						]
						]
					]
					]
				]
,				[
					0,
					null,
					false,
					null,
					9408433307039182,
					[
					[
						122,
						cr.plugins_.Touch.prototype.cnds.IsTouchingObject,
						null,
						0,
						false,
						false,
						false,
						2366642263934934,
						false
						,[
						[
							4,
							18
						]
						]
					]
,					[
						122,
						cr.plugins_.Touch.prototype.cnds.IsTouchingObject,
						null,
						0,
						false,
						true,
						false,
						8308701738188061,
						false
						,[
						[
							4,
							112
						]
						]
					]
					],
					[
					[
						114,
						cr.behaviors.Platform.prototype.acts.SimulateControl,
						"Platform",
						6543310840030759,
						false
						,[
						[
							3,
							0
						]
						]
					]
					]
				]
,				[
					0,
					null,
					false,
					null,
					6709139479450497,
					[
					[
						122,
						cr.plugins_.Touch.prototype.cnds.IsTouchingObject,
						null,
						0,
						false,
						false,
						false,
						2561094898200588,
						false
						,[
						[
							4,
							19
						]
						]
					]
,					[
						122,
						cr.plugins_.Touch.prototype.cnds.IsTouchingObject,
						null,
						0,
						false,
						true,
						false,
						9378165868654577,
						false
						,[
						[
							4,
							112
						]
						]
					]
					],
					[
					[
						114,
						cr.behaviors.Platform.prototype.acts.SimulateControl,
						"Platform",
						7934911895731109,
						false
						,[
						[
							3,
							1
						]
						]
					]
					]
				]
,				[
					0,
					null,
					false,
					null,
					5832403112330459,
					[
					[
						122,
						cr.plugins_.Touch.prototype.cnds.OnTouchObject,
						null,
						1,
						false,
						false,
						false,
						2215178275601908,
						false
						,[
						[
							4,
							112
						]
						]
					]
					],
					[
					]
					,[
					[
						0,
						null,
						false,
						null,
						2512661263774046,
						[
						[
							112,
							cr.plugins_.Sprite.prototype.cnds.IsFlipped,
							null,
							0,
							false,
							false,
							false,
							7487934233469869,
							false
						]
						],
						[
						[
							127,
							cr.plugins_.Function.prototype.acts.CallFunction,
							null,
							8547050063869263,
							false
							,[
							[
								1,
								[
									2,
									"gravdown"
								]
							]
,							[
								13,
							]
							]
						]
						]
					]
,					[
						0,
						null,
						false,
						null,
						4922880166298182,
						[
						[
							-1,
							cr.system_object.prototype.cnds.Else,
							null,
							0,
							false,
							false,
							false,
							3101907799563892,
							false
						]
						],
						[
						[
							127,
							cr.plugins_.Function.prototype.acts.CallFunction,
							null,
							5124475267360822,
							false
							,[
							[
								1,
								[
									2,
									"gravup"
								]
							]
,							[
								13,
							]
							]
						]
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			5256907814070718,
			[
			[
				114,
				cr.plugins_.Sprite.prototype.cnds.OnCollision,
				null,
				0,
				false,
				false,
				true,
				6930379476351438,
				false
				,[
				[
					4,
					110
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				4682318636968409,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					3080657413538706,
					false
					,[
					[
						11,
						"hasKey"
					]
,					[
						8,
						4
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				[
					110,
					cr.plugins_.Sprite.prototype.acts.Destroy,
					null,
					8536657440882379,
					false
				]
,				[
					-1,
					cr.system_object.prototype.acts.SubVar,
					null,
					8392265731521888,
					false
					,[
					[
						11,
						"hasKey"
					]
,					[
						7,
						[
							0,
							1
						]
					]
					]
				]
				]
				,[
				[
					0,
					null,
					false,
					null,
					8886652268615342,
					[
					[
						-1,
						cr.system_object.prototype.cnds.TriggerOnce,
						null,
						0,
						false,
						false,
						false,
						7500410589527927,
						false
					]
					],
					[
					[
						127,
						cr.plugins_.Function.prototype.acts.CallFunction,
						null,
						5491734521281966,
						false
						,[
						[
							1,
							[
								2,
								"PlaySound"
							]
						]
,						[
							13,
															[
									7,
									[
										2,
										"unlock-door-short"
									]
								]
,
								[
									7,
									[
										0,
										0
									]
								]
						]
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			6303181699402039,
			[
			[
				114,
				cr.plugins_.Sprite.prototype.cnds.IsOverlapping,
				null,
				0,
				false,
				false,
				false,
				4710825254494807,
				false
				,[
				[
					4,
					115
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				6176610697070885,
				[
				[
					115,
					cr.plugins_.Sprite.prototype.cnds.IsVisible,
					null,
					0,
					false,
					false,
					false,
					4724474237763985,
					false
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.SetVar,
					null,
					4733264218037532,
					false
					,[
					[
						11,
						"hasDied"
					]
,					[
						7,
						[
							0,
							1
						]
					]
					]
				]
				]
				,[
				[
					0,
					null,
					false,
					null,
					3401830496534817,
					[
					[
						-1,
						cr.system_object.prototype.cnds.TriggerOnce,
						null,
						0,
						false,
						false,
						false,
						1815894718116972,
						false
					]
					],
					[
					[
						114,
						cr.behaviors.Platform.prototype.acts.SetEnabled,
						"Platform",
						9071429817475592,
						false
						,[
						[
							3,
							0
						]
						]
					]
,					[
						114,
						cr.behaviors.Platform.prototype.acts.SetIgnoreInput,
						"Platform",
						3122448417594126,
						false
						,[
						[
							3,
							1
						]
						]
					]
,					[
						-1,
						cr.system_object.prototype.acts.SetVar,
						null,
						4610014276355309,
						false
						,[
						[
							11,
							"hasDisarm"
						]
,						[
							7,
							[
								0,
								0
							]
						]
						]
					]
,					[
						-1,
						cr.system_object.prototype.acts.SetVar,
						null,
						491809816416633,
						false
						,[
						[
							11,
							"hasKey"
						]
,						[
							7,
							[
								0,
								0
							]
						]
						]
					]
,					[
						127,
						cr.plugins_.Function.prototype.acts.CallFunction,
						null,
						7114561464583712,
						false
						,[
						[
							1,
							[
								2,
								"PlaySound"
							]
						]
,						[
							13,
															[
									7,
									[
										2,
										"electric-zap"
									]
								]
,
								[
									7,
									[
										0,
										0
									]
								]
						]
						]
					]
,					[
						112,
						cr.plugins_.Sprite.prototype.acts.SetAnim,
						null,
						2448131644680971,
						false
						,[
						[
							1,
							[
								2,
								"Electrified"
							]
						]
,						[
							3,
							1
						]
						]
					]
,					[
						112,
						cr.plugins_.Sprite.prototype.acts.SetFlipped,
						null,
						3028544276547138,
						false
						,[
						[
							3,
							1
						]
						]
					]
,					[
						112,
						cr.plugins_.Sprite.prototype.acts.RotateCounterclockwise,
						null,
						1034824989262224,
						false
						,[
						[
							0,
							[
								0,
								25
							]
						]
						]
					]
,					[
						-1,
						cr.system_object.prototype.acts.Wait,
						null,
						9164553388867167,
						false
						,[
						[
							0,
							[
								1,
								1
							]
						]
						]
					]
,					[
						-1,
						cr.system_object.prototype.acts.RestartLayout,
						null,
						9012641872018062,
						false
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			3854203966698416,
			[
			[
				114,
				cr.plugins_.Sprite.prototype.cnds.OnCollision,
				null,
				0,
				false,
				false,
				true,
				9017629011150967,
				false
				,[
				[
					4,
					113
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				5364976747726099,
				[
				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					9917354103731651,
					false
					,[
					[
						11,
						"hasDisarm"
					]
,					[
						8,
						5
					]
,					[
						7,
						[
							0,
							1
						]
					]
					]
				]
				],
				[
				[
					113,
					cr.plugins_.Sprite.prototype.acts.Destroy,
					null,
					4290652792756101,
					false
				]
,				[
					-1,
					cr.system_object.prototype.acts.SubVar,
					null,
					445062259036393,
					false
					,[
					[
						11,
						"hasDisarm"
					]
,					[
						7,
						[
							0,
							1
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				8700825248484161,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					3372468468857402,
					false
				]
,				[
					-1,
					cr.system_object.prototype.cnds.CompareVar,
					null,
					0,
					false,
					false,
					false,
					7372833845295829,
					false
					,[
					[
						11,
						"hasDisarm"
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							0,
							0
						]
					]
					]
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.SetVar,
					null,
					5540675009515876,
					false
					,[
					[
						11,
						"hasDied"
					]
,					[
						7,
						[
							0,
							1
						]
					]
					]
				]
				]
				,[
				[
					0,
					null,
					false,
					null,
					2587285298525154,
					[
					[
						-1,
						cr.system_object.prototype.cnds.TriggerOnce,
						null,
						0,
						false,
						false,
						false,
						4658254629828601,
						false
					]
					],
					[
					[
						114,
						cr.behaviors.Platform.prototype.acts.SetEnabled,
						"Platform",
						8806347832911656,
						false
						,[
						[
							3,
							0
						]
						]
					]
,					[
						114,
						cr.behaviors.Platform.prototype.acts.SetIgnoreInput,
						"Platform",
						2944688728995419,
						false
						,[
						[
							3,
							1
						]
						]
					]
,					[
						-1,
						cr.system_object.prototype.acts.SetVar,
						null,
						7251968467759152,
						false
						,[
						[
							11,
							"hasDisarm"
						]
,						[
							7,
							[
								0,
								0
							]
						]
						]
					]
,					[
						-1,
						cr.system_object.prototype.acts.SetVar,
						null,
						9531103912536103,
						false
						,[
						[
							11,
							"hasKey"
						]
,						[
							7,
							[
								0,
								0
							]
						]
						]
					]
,					[
						127,
						cr.plugins_.Function.prototype.acts.CallFunction,
						null,
						9108364543831301,
						false
						,[
						[
							1,
							[
								2,
								"PlaySound"
							]
						]
,						[
							13,
															[
									7,
									[
										2,
										"run-into-bomb"
									]
								]
,
								[
									7,
									[
										0,
										0
									]
								]
						]
						]
					]
,					[
						112,
						cr.plugins_.Sprite.prototype.acts.SetAnim,
						null,
						8430117888721172,
						false
						,[
						[
							1,
							[
								2,
								"Explode"
							]
						]
,						[
							3,
							1
						]
						]
					]
,					[
						112,
						cr.plugins_.Sprite.prototype.acts.SetFlipped,
						null,
						277797106628324,
						false
						,[
						[
							3,
							1
						]
						]
					]
,					[
						-1,
						cr.system_object.prototype.acts.Wait,
						null,
						3381088410546303,
						false
						,[
						[
							0,
							[
								1,
								1
							]
						]
						]
					]
,					[
						-1,
						cr.system_object.prototype.acts.RestartLayout,
						null,
						9790950574016525,
						false
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			1936493861507423,
			[
			[
				114,
				cr.plugins_.Sprite.prototype.cnds.IsOverlapping,
				null,
				0,
				false,
				false,
				false,
				9088569534416203,
				false
				,[
				[
					4,
					119
				]
				]
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.AddVar,
				null,
				1528325962440394,
				false
				,[
				[
					11,
					"hasDisarm"
				]
,				[
					7,
					[
						0,
						1
					]
				]
				]
			]
,			[
				119,
				cr.plugins_.Sprite.prototype.acts.Destroy,
				null,
				5883559649067416,
				false
			]
			]
			,[
			[
				0,
				null,
				false,
				null,
				8341019088098934,
				[
				[
					-1,
					cr.system_object.prototype.cnds.TriggerOnce,
					null,
					0,
					false,
					false,
					false,
					5801683311850316,
					false
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					4372385681362252,
					false
					,[
					[
						1,
						[
							2,
							"PlaySound"
						]
					]
,					[
						13,
													[
								7,
								[
									2,
									"get-item"
								]
							]
,
							[
								7,
								[
									0,
									0
								]
							]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			4046604560535307,
			[
			[
				114,
				cr.plugins_.Sprite.prototype.cnds.IsOverlapping,
				null,
				0,
				false,
				false,
				false,
				7161154735561438,
				false
				,[
				[
					4,
					111
				]
				]
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.AddVar,
				null,
				1273484667020058,
				false
				,[
				[
					11,
					"hasKey"
				]
,				[
					7,
					[
						0,
						1
					]
				]
				]
			]
,			[
				111,
				cr.plugins_.Sprite.prototype.acts.Destroy,
				null,
				9205000427811549,
				false
			]
			]
			,[
			[
				0,
				null,
				false,
				null,
				5480648457559717,
				[
				[
					-1,
					cr.system_object.prototype.cnds.TriggerOnce,
					null,
					0,
					false,
					false,
					false,
					4769415687254616,
					false
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					7542452235741268,
					false
					,[
					[
						1,
						[
							2,
							"PlaySound"
						]
					]
,					[
						13,
													[
								7,
								[
									2,
									"get-item"
								]
							]
,
							[
								7,
								[
									0,
									0
								]
							]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			6390111181652768,
			[
			[
				114,
				cr.plugins_.Sprite.prototype.cnds.IsOverlapping,
				null,
				0,
				false,
				false,
				false,
				5697274272737856,
				false
				,[
				[
					4,
					93
				]
				]
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.AddVar,
				null,
				4184775805098879,
				false
				,[
				[
					11,
					"cPixels"
				]
,				[
					7,
					[
						0,
						1
					]
				]
				]
			]
,			[
				93,
				cr.plugins_.Sprite.prototype.acts.Destroy,
				null,
				7022099824614462,
				false
			]
			]
			,[
			[
				0,
				null,
				false,
				null,
				9596162917390468,
				[
				[
					-1,
					cr.system_object.prototype.cnds.TriggerOnce,
					null,
					0,
					false,
					false,
					false,
					9079818312135797,
					false
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					4510759311342989,
					false
					,[
					[
						1,
						[
							2,
							"PlaySound"
						]
					]
,					[
						13,
													[
								7,
								[
									2,
									"pickup_coin"
								]
							]
,
							[
								7,
								[
									0,
									0
								]
							]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			8637105327269072,
			[
			[
				-1,
				cr.system_object.prototype.cnds.CompareVar,
				null,
				0,
				false,
				false,
				false,
				829985209136189,
				false
				,[
				[
					11,
					"canExit"
				]
,				[
					8,
					0
				]
,				[
					7,
					[
						0,
						1
					]
				]
				]
			]
			],
			[
			[
				109,
				cr.plugins_.Sprite.prototype.acts.SetOpacity,
				null,
				4517799401187195,
				false
				,[
				[
					0,
					[
						0,
						100
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			7672165738808516,
			[
			[
				114,
				cr.plugins_.Sprite.prototype.cnds.OnCollision,
				null,
				0,
				false,
				false,
				true,
				2983558713416939,
				false
				,[
				[
					4,
					109
				]
				]
			]
,			[
				109,
				cr.plugins_.Sprite.prototype.cnds.CompareOpacity,
				null,
				0,
				false,
				false,
				false,
				8907778020817793,
				false
				,[
				[
					8,
					0
				]
,				[
					0,
					[
						0,
						100
					]
				]
				]
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.SetVar,
				null,
				9950235563926967,
				false
				,[
				[
					11,
					"hasDisarm"
				]
,				[
					7,
					[
						0,
						0
					]
				]
				]
			]
,			[
				-1,
				cr.system_object.prototype.acts.SetVar,
				null,
				1022067651543151,
				false
				,[
				[
					11,
					"hasKey"
				]
,				[
					7,
					[
						0,
						0
					]
				]
				]
			]
,			[
				114,
				cr.behaviors.Platform.prototype.acts.SetEnabled,
				"Platform",
				6495508545266825,
				false
				,[
				[
					3,
					0
				]
				]
			]
,			[
				112,
				cr.plugins_.Sprite.prototype.acts.SetAnim,
				null,
				6811263390332914,
				false
				,[
				[
					1,
					[
						2,
						"Exit"
					]
				]
,				[
					3,
					1
				]
				]
			]
,			[
				112,
				cr.behaviors.Fade.prototype.acts.StartFade,
				"Fade",
				8208176306861214,
				false
			]
			]
			,[
			[
				0,
				null,
				false,
				null,
				2060919209938677,
				[
				[
					-1,
					cr.system_object.prototype.cnds.TriggerOnce,
					null,
					0,
					false,
					false,
					false,
					3832793351949496,
					false
				]
				],
				[
				[
					127,
					cr.plugins_.Function.prototype.acts.CallFunction,
					null,
					4329380714348001,
					false
					,[
					[
						1,
						[
							2,
							"PlaySound"
						]
					]
,					[
						13,
													[
								7,
								[
									2,
									"exit-portal"
								]
							]
,
							[
								7,
								[
									0,
									0
								]
							]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				5362054173470782,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Every,
					null,
					0,
					false,
					false,
					false,
					5640199731234701,
					false
					,[
					[
						0,
						[
							1,
							0.05
						]
					]
					]
				]
				],
				[
				[
					112,
					cr.plugins_.Sprite.prototype.acts.SetScale,
					null,
					9461026390508887,
					false
					,[
					[
						0,
						[
							1,
							0.6
						]
					]
					]
				]
,				[
					114,
					cr.plugins_.Sprite.prototype.acts.MoveForward,
					null,
					8090864105292747,
					false
					,[
					[
						0,
						[
							0,
							4
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				6363186669542817,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Compare,
					null,
					0,
					false,
					false,
					false,
					1072604462456338,
					false
					,[
					[
						7,
						[
							23,
							"targetLevel"
						]
					]
,					[
						8,
						0
					]
,					[
						7,
						[
							19,
							cr.system_object.prototype.exps["int"]
							,[
[
								20,
								126,
								cr.plugins_.WebStorage.prototype.exps.LocalValue,
								true,
								null
								,[
[
									2,
									"hasUserPlayed"
								]
								]
							]
							]
						]
					]
					]
				]
				],
				[
				[
					126,
					cr.plugins_.WebStorage.prototype.acts.StoreLocal,
					null,
					3230507244850549,
					false
					,[
					[
						1,
						[
							2,
							"hasUserPlayed"
						]
					]
,					[
						7,
						[
							4,
							[
								23,
								"targetLevel"
							]
							,[
								0,
								1
							]
						]
					]
					]
				]
,				[
					-1,
					cr.system_object.prototype.acts.Wait,
					null,
					881860123107779,
					false
					,[
					[
						0,
						[
							1,
							1
						]
					]
					]
				]
,				[
					-1,
					cr.system_object.prototype.acts.GoToLayoutByName,
					null,
					1484985325627019,
					false
					,[
					[
						1,
						[
							23,
							"lastEpisode"
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				8514846716299415,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					8537828793630256,
					false
				]
				],
				[
				[
					-1,
					cr.system_object.prototype.acts.Wait,
					null,
					367202664111779,
					false
					,[
					[
						0,
						[
							1,
							1
						]
					]
					]
				]
,				[
					-1,
					cr.system_object.prototype.acts.GoToLayoutByName,
					null,
					765191850137601,
					false
					,[
					[
						1,
						[
							23,
							"lastEpisode"
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			5555391956876105,
			[
			[
				127,
				cr.plugins_.Function.prototype.cnds.OnFunction,
				null,
				2,
				false,
				false,
				false,
				2448729138085499,
				false
				,[
				[
					1,
					[
						2,
						"message"
					]
				]
				]
			]
			],
			[
			[
				17,
				cr.plugins_.Spritefont2.prototype.acts.SetText,
				null,
				3414728873921865,
				false
				,[
				[
					7,
					[
						20,
						127,
						cr.plugins_.Function.prototype.exps.Param,
						false,
						null
						,[
[
							0,
							0
						]
						]
					]
				]
				]
			]
,			[
				16,
				cr.plugins_.Sprite.prototype.acts.SetVisible,
				null,
				2062580655885849,
				false
				,[
				[
					3,
					1
				]
				]
			]
,			[
				17,
				cr.plugins_.Spritefont2.prototype.acts.SetVisible,
				null,
				8702982306179065,
				false
				,[
				[
					3,
					1
				]
				]
			]
,			[
				17,
				cr.plugins_.Spritefont2.prototype.acts.MoveToTop,
				null,
				790788380009516,
				false
			]
,			[
				-1,
				cr.system_object.prototype.acts.Wait,
				null,
				9136233030805384,
				false
				,[
				[
					0,
					[
						1,
						2.5
					]
				]
				]
			]
,			[
				17,
				cr.plugins_.Spritefont2.prototype.acts.SetVisible,
				null,
				3504091084624768,
				false
				,[
				[
					3,
					0
				]
				]
			]
,			[
				16,
				cr.plugins_.Sprite.prototype.acts.SetVisible,
				null,
				9023422737817698,
				false
				,[
				[
					3,
					0
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			6833122752197896,
			[
			[
				127,
				cr.plugins_.Function.prototype.cnds.OnFunction,
				null,
				2,
				false,
				false,
				false,
				5964757066841257,
				false
				,[
				[
					1,
					[
						2,
						"gravup"
					]
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				8085041396324109,
				[
				[
					114,
					cr.behaviors.Platform.prototype.cnds.IsFalling,
					"Platform",
					0,
					false,
					false,
					false,
					7495235009624691,
					false
				]
				],
				[
				]
			]
,			[
				0,
				null,
				false,
				null,
				7068571197311858,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					6171982660859517,
					false
				]
				],
				[
				[
					112,
					cr.plugins_.Sprite.prototype.acts.SetFlipped,
					null,
					1335572303459783,
					false
					,[
					[
						3,
						0
					]
					]
				]
,				[
					114,
					cr.behaviors.Platform.prototype.acts.SetGravity,
					"Platform",
					707726851403764,
					false
					,[
					[
						0,
						[
							3,
							[
								23,
								"GRAVITY"
							]
						]
					]
					]
				]
,				[
					138,
					cr.plugins_.Sprite.prototype.acts.SetFlipped,
					null,
					6056813738070862,
					false
					,[
					[
						3,
						0
					]
					]
				]
,				[
					139,
					cr.plugins_.Sprite.prototype.acts.SetFlipped,
					null,
					5396540079849387,
					false
					,[
					[
						3,
						0
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			233023216329225,
			[
			[
				127,
				cr.plugins_.Function.prototype.cnds.OnFunction,
				null,
				2,
				false,
				false,
				false,
				3478746865697914,
				false
				,[
				[
					1,
					[
						2,
						"gravdown"
					]
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				1103904070741568,
				[
				[
					114,
					cr.behaviors.Platform.prototype.cnds.IsFalling,
					"Platform",
					0,
					false,
					false,
					false,
					6993855247187698,
					false
				]
				],
				[
				]
			]
,			[
				0,
				null,
				false,
				null,
				100439190017649,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					6363209112480042,
					false
				]
				],
				[
				[
					112,
					cr.plugins_.Sprite.prototype.acts.SetFlipped,
					null,
					6384127527054371,
					false
					,[
					[
						3,
						1
					]
					]
				]
,				[
					114,
					cr.behaviors.Platform.prototype.acts.SetGravity,
					"Platform",
					1764624082836733,
					false
					,[
					[
						0,
						[
							23,
							"GRAVITY"
						]
					]
					]
				]
,				[
					138,
					cr.plugins_.Sprite.prototype.acts.SetFlipped,
					null,
					319569278042222,
					false
					,[
					[
						3,
						1
					]
					]
				]
,				[
					139,
					cr.plugins_.Sprite.prototype.acts.SetFlipped,
					null,
					1953943941577907,
					false
					,[
					[
						3,
						1
					]
					]
				]
				]
			]
			]
		]
		]
	]
,	[
		"Audio",
		[
		[
			0,
			null,
			false,
			null,
			6145266386199219,
			[
			[
				127,
				cr.plugins_.Function.prototype.cnds.OnFunction,
				null,
				2,
				false,
				false,
				false,
				3886955606603967,
				false
				,[
				[
					1,
					[
						2,
						"PlaySound"
					]
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				1664695847253673,
				[
				[
					133,
					cr.plugins_.windowsphone.prototype.cnds.IsWindowsPhone,
					null,
					0,
					false,
					true,
					false,
					3531305322307582,
					false
				]
				],
				[
				[
					128,
					cr.plugins_.Audio.prototype.acts.PlayByName,
					null,
					7893508588797917,
					false
					,[
					[
						3,
						0
					]
,					[
						1,
						[
							20,
							127,
							cr.plugins_.Function.prototype.exps.Param,
							false,
							null
							,[
[
								0,
								0
							]
							]
						]
					]
,					[
						3,
						0
					]
,					[
						0,
						[
							20,
							127,
							cr.plugins_.Function.prototype.exps.Param,
							false,
							null
							,[
[
								0,
								1
							]
							]
						]
					]
,					[
						1,
						[
							20,
							127,
							cr.plugins_.Function.prototype.exps.Param,
							false,
							null
							,[
[
								0,
								0
							]
							]
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				2457250811476788,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					1475574364044869,
					false
				]
				],
				[
				[
					133,
					cr.plugins_.windowsphone.prototype.acts.PlayWPSound,
					null,
					5721847379508986,
					false
					,[
					[
						1,
						[
							10,
							[
								10,
								[
									2,
									"media/"
								]
								,[
									20,
									127,
									cr.plugins_.Function.prototype.exps.Param,
									false,
									null
									,[
[
										0,
										0
									]
									]
								]
							]
							,[
								2,
								".wav"
							]
						]
					]
,					[
						3,
						0
					]
,					[
						0,
						[
							20,
							127,
							cr.plugins_.Function.prototype.exps.Param,
							false,
							null
							,[
[
								0,
								1
							]
							]
						]
					]
,					[
						1,
						[
							2,
							""
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			269641630722748,
			[
			[
				127,
				cr.plugins_.Function.prototype.cnds.OnFunction,
				null,
				2,
				false,
				false,
				false,
				5732218435184668,
				false
				,[
				[
					1,
					[
						2,
						"PlayMusic"
					]
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				9645195460636503,
				[
				[
					133,
					cr.plugins_.windowsphone.prototype.cnds.IsWindowsPhone,
					null,
					0,
					false,
					true,
					false,
					7324074933949777,
					false
				]
				],
				[
				[
					128,
					cr.plugins_.Audio.prototype.acts.PlayByName,
					null,
					3664541427880187,
					false
					,[
					[
						3,
						0
					]
,					[
						1,
						[
							20,
							127,
							cr.plugins_.Function.prototype.exps.Param,
							false,
							null
							,[
[
								0,
								0
							]
							]
						]
					]
,					[
						3,
						1
					]
,					[
						0,
						[
							20,
							127,
							cr.plugins_.Function.prototype.exps.Param,
							false,
							null
							,[
[
								0,
								1
							]
							]
						]
					]
,					[
						1,
						[
							20,
							127,
							cr.plugins_.Function.prototype.exps.Param,
							false,
							null
							,[
[
								0,
								0
							]
							]
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				6105268747817393,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					4245727131489427,
					false
				]
				],
				[
				[
					133,
					cr.plugins_.windowsphone.prototype.acts.PlayWPMusic,
					null,
					8659887921790374,
					false
					,[
					[
						1,
						[
							10,
							[
								10,
								[
									2,
									"media/"
								]
								,[
									20,
									127,
									cr.plugins_.Function.prototype.exps.Param,
									false,
									null
									,[
[
										0,
										0
									]
									]
								]
							]
							,[
								2,
								".wav"
							]
						]
					]
,					[
						3,
						1
					]
,					[
						0,
						[
							20,
							127,
							cr.plugins_.Function.prototype.exps.Param,
							false,
							null
							,[
[
								0,
								1
							]
							]
						]
					]
					]
				]
				]
			]
			]
		]
,		[
			0,
			null,
			false,
			null,
			8647256620781195,
			[
			[
				127,
				cr.plugins_.Function.prototype.cnds.OnFunction,
				null,
				2,
				false,
				false,
				false,
				3225314647282065,
				false
				,[
				[
					1,
					[
						2,
						"StopMusic"
					]
				]
				]
			]
			],
			[
			]
			,[
			[
				0,
				null,
				false,
				null,
				4875705179123577,
				[
				[
					133,
					cr.plugins_.windowsphone.prototype.cnds.IsWindowsPhone,
					null,
					0,
					false,
					true,
					false,
					4991428356474396,
					false
				]
				],
				[
				[
					128,
					cr.plugins_.Audio.prototype.acts.Stop,
					null,
					980531505975016,
					false
					,[
					[
						1,
						[
							20,
							127,
							cr.plugins_.Function.prototype.exps.Param,
							false,
							null
							,[
[
								0,
								0
							]
							]
						]
					]
					]
				]
				]
			]
,			[
				0,
				null,
				false,
				null,
				5769613689571853,
				[
				[
					-1,
					cr.system_object.prototype.cnds.Else,
					null,
					0,
					false,
					false,
					false,
					6198301435175122,
					false
				]
				],
				[
				[
					133,
					cr.plugins_.windowsphone.prototype.acts.StopWPMusic,
					null,
					3134397718666684,
					false
				]
				]
			]
			]
		]
		]
	]
,	[
		"HowTo",
		[
		[
			0,
			null,
			false,
			null,
			7010910939828838,
			[
			[
				122,
				cr.plugins_.Touch.prototype.cnds.OnTouchObject,
				null,
				1,
				false,
				false,
				false,
				1004040006511833,
				false
				,[
				[
					4,
					11
				]
				]
			]
			],
			[
			[
				-1,
				cr.system_object.prototype.acts.GoToLayout,
				null,
				6192857501277874,
				false
				,[
				[
					6,
					"Splash"
				]
				]
			]
			]
		]
		]
	]
	],
	"media/",
	true,
	480,
	320,
	4,
	true,
	false,
	true,
	"1.0.0.0",
	true,
	true,
	0,
	2,
	3353,
	true,
	false,
	[
	]
];};
