Skip to content

Instantly share code, notes, and snippets.

@tmayer
Last active August 29, 2015 14:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tmayer/fbced4863834dd9cf682 to your computer and use it in GitHub Desktop.
Save tmayer/fbced4863834dd9cf682 to your computer and use it in GitHub Desktop.
Hessen Dialekterkenner
Display the source blob
Display the rendered blob
Raw
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
d3 = function() {
var π = Math.PI, ε = 1e-6, d3 = {
version: "3.0.8"
}, d3_radians = π / 180, d3_degrees = 180 / π, d3_document = document, d3_window = window;
function d3_target(d) {
return d.target;
}
function d3_source(d) {
return d.source;
}
var d3_format_decimalPoint = ".", d3_format_thousandsSeparator = ",", d3_format_grouping = [ 3, 3 ];
if (!Date.now) Date.now = function() {
return +new Date();
};
try {
d3_document.createElement("div").style.setProperty("opacity", 0, "");
} catch (error) {
var d3_style_prototype = d3_window.CSSStyleDeclaration.prototype, d3_style_setProperty = d3_style_prototype.setProperty;
d3_style_prototype.setProperty = function(name, value, priority) {
d3_style_setProperty.call(this, name, value + "", priority);
};
}
function d3_class(ctor, properties) {
try {
for (var key in properties) {
Object.defineProperty(ctor.prototype, key, {
value: properties[key],
enumerable: false
});
}
} catch (e) {
ctor.prototype = properties;
}
}
var d3_array = d3_arraySlice;
function d3_arrayCopy(pseudoarray) {
var i = -1, n = pseudoarray.length, array = [];
while (++i < n) array.push(pseudoarray[i]);
return array;
}
function d3_arraySlice(pseudoarray) {
return Array.prototype.slice.call(pseudoarray);
}
try {
d3_array(d3_document.documentElement.childNodes)[0].nodeType;
} catch (e) {
d3_array = d3_arrayCopy;
}
var d3_arraySubclass = [].__proto__ ? function(array, prototype) {
array.__proto__ = prototype;
} : function(array, prototype) {
for (var property in prototype) array[property] = prototype[property];
};
d3.map = function(object) {
var map = new d3_Map();
for (var key in object) map.set(key, object[key]);
return map;
};
function d3_Map() {}
d3_class(d3_Map, {
has: function(key) {
return d3_map_prefix + key in this;
},
get: function(key) {
return this[d3_map_prefix + key];
},
set: function(key, value) {
return this[d3_map_prefix + key] = value;
},
remove: function(key) {
key = d3_map_prefix + key;
return key in this && delete this[key];
},
keys: function() {
var keys = [];
this.forEach(function(key) {
keys.push(key);
});
return keys;
},
values: function() {
var values = [];
this.forEach(function(key, value) {
values.push(value);
});
return values;
},
entries: function() {
var entries = [];
this.forEach(function(key, value) {
entries.push({
key: key,
value: value
});
});
return entries;
},
forEach: function(f) {
for (var key in this) {
if (key.charCodeAt(0) === d3_map_prefixCode) {
f.call(this, key.substring(1), this[key]);
}
}
}
});
var d3_map_prefix = "\0", d3_map_prefixCode = d3_map_prefix.charCodeAt(0);
function d3_identity(d) {
return d;
}
function d3_true() {
return true;
}
function d3_functor(v) {
return typeof v === "function" ? v : function() {
return v;
};
}
d3.functor = d3_functor;
d3.rebind = function(target, source) {
var i = 1, n = arguments.length, method;
while (++i < n) target[method = arguments[i]] = d3_rebind(target, source, source[method]);
return target;
};
function d3_rebind(target, source, method) {
return function() {
var value = method.apply(source, arguments);
return value === source ? target : value;
};
}
d3.ascending = function(a, b) {
return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;
};
d3.descending = function(a, b) {
return b < a ? -1 : b > a ? 1 : b >= a ? 0 : NaN;
};
d3.mean = function(array, f) {
var n = array.length, a, m = 0, i = -1, j = 0;
if (arguments.length === 1) {
while (++i < n) if (d3_number(a = array[i])) m += (a - m) / ++j;
} else {
while (++i < n) if (d3_number(a = f.call(array, array[i], i))) m += (a - m) / ++j;
}
return j ? m : undefined;
};
d3.median = function(array, f) {
if (arguments.length > 1) array = array.map(f);
array = array.filter(d3_number);
return array.length ? d3.quantile(array.sort(d3.ascending), .5) : undefined;
};
d3.min = function(array, f) {
var i = -1, n = array.length, a, b;
if (arguments.length === 1) {
while (++i < n && ((a = array[i]) == null || a != a)) a = undefined;
while (++i < n) if ((b = array[i]) != null && a > b) a = b;
} else {
while (++i < n && ((a = f.call(array, array[i], i)) == null || a != a)) a = undefined;
while (++i < n) if ((b = f.call(array, array[i], i)) != null && a > b) a = b;
}
return a;
};
d3.max = function(array, f) {
var i = -1, n = array.length, a, b;
if (arguments.length === 1) {
while (++i < n && ((a = array[i]) == null || a != a)) a = undefined;
while (++i < n) if ((b = array[i]) != null && b > a) a = b;
} else {
while (++i < n && ((a = f.call(array, array[i], i)) == null || a != a)) a = undefined;
while (++i < n) if ((b = f.call(array, array[i], i)) != null && b > a) a = b;
}
return a;
};
d3.extent = function(array, f) {
var i = -1, n = array.length, a, b, c;
if (arguments.length === 1) {
while (++i < n && ((a = c = array[i]) == null || a != a)) a = c = undefined;
while (++i < n) if ((b = array[i]) != null) {
if (a > b) a = b;
if (c < b) c = b;
}
} else {
while (++i < n && ((a = c = f.call(array, array[i], i)) == null || a != a)) a = undefined;
while (++i < n) if ((b = f.call(array, array[i], i)) != null) {
if (a > b) a = b;
if (c < b) c = b;
}
}
return [ a, c ];
};
d3.random = {
normal: function(µ, σ) {
var n = arguments.length;
if (n < 2) σ = 1;
if (n < 1) µ = 0;
return function() {
var x, y, r;
do {
x = Math.random() * 2 - 1;
y = Math.random() * 2 - 1;
r = x * x + y * y;
} while (!r || r > 1);
return µ + σ * x * Math.sqrt(-2 * Math.log(r) / r);
};
},
logNormal: function() {
var random = d3.random.normal.apply(d3, arguments);
return function() {
return Math.exp(random());
};
},
irwinHall: function(m) {
return function() {
for (var s = 0, j = 0; j < m; j++) s += Math.random();
return s / m;
};
}
};
function d3_number(x) {
return x != null && !isNaN(x);
}
d3.sum = function(array, f) {
var s = 0, n = array.length, a, i = -1;
if (arguments.length === 1) {
while (++i < n) if (!isNaN(a = +array[i])) s += a;
} else {
while (++i < n) if (!isNaN(a = +f.call(array, array[i], i))) s += a;
}
return s;
};
d3.quantile = function(values, p) {
var H = (values.length - 1) * p + 1, h = Math.floor(H), v = +values[h - 1], e = H - h;
return e ? v + e * (values[h] - v) : v;
};
d3.shuffle = function(array) {
var m = array.length, t, i;
while (m) {
i = Math.random() * m-- | 0;
t = array[m], array[m] = array[i], array[i] = t;
}
return array;
};
d3.transpose = function(matrix) {
return d3.zip.apply(d3, matrix);
};
d3.zip = function() {
if (!(n = arguments.length)) return [];
for (var i = -1, m = d3.min(arguments, d3_zipLength), zips = new Array(m); ++i < m; ) {
for (var j = -1, n, zip = zips[i] = new Array(n); ++j < n; ) {
zip[j] = arguments[j][i];
}
}
return zips;
};
function d3_zipLength(d) {
return d.length;
}
d3.bisector = function(f) {
return {
left: function(a, x, lo, hi) {
if (arguments.length < 3) lo = 0;
if (arguments.length < 4) hi = a.length;
while (lo < hi) {
var mid = lo + hi >>> 1;
if (f.call(a, a[mid], mid) < x) lo = mid + 1; else hi = mid;
}
return lo;
},
right: function(a, x, lo, hi) {
if (arguments.length < 3) lo = 0;
if (arguments.length < 4) hi = a.length;
while (lo < hi) {
var mid = lo + hi >>> 1;
if (x < f.call(a, a[mid], mid)) hi = mid; else lo = mid + 1;
}
return lo;
}
};
};
var d3_bisector = d3.bisector(function(d) {
return d;
});
d3.bisectLeft = d3_bisector.left;
d3.bisect = d3.bisectRight = d3_bisector.right;
d3.nest = function() {
var nest = {}, keys = [], sortKeys = [], sortValues, rollup;
function map(array, depth) {
if (depth >= keys.length) return rollup ? rollup.call(nest, array) : sortValues ? array.sort(sortValues) : array;
var i = -1, n = array.length, key = keys[depth++], keyValue, object, valuesByKey = new d3_Map(), values, o = {};
while (++i < n) {
if (values = valuesByKey.get(keyValue = key(object = array[i]))) {
values.push(object);
} else {
valuesByKey.set(keyValue, [ object ]);
}
}
valuesByKey.forEach(function(keyValue, values) {
o[keyValue] = map(values, depth);
});
return o;
}
function entries(map, depth) {
if (depth >= keys.length) return map;
var a = [], sortKey = sortKeys[depth++], key;
for (key in map) {
a.push({
key: key,
values: entries(map[key], depth)
});
}
if (sortKey) a.sort(function(a, b) {
return sortKey(a.key, b.key);
});
return a;
}
nest.map = function(array) {
return map(array, 0);
};
nest.entries = function(array) {
return entries(map(array, 0), 0);
};
nest.key = function(d) {
keys.push(d);
return nest;
};
nest.sortKeys = function(order) {
sortKeys[keys.length - 1] = order;
return nest;
};
nest.sortValues = function(order) {
sortValues = order;
return nest;
};
nest.rollup = function(f) {
rollup = f;
return nest;
};
return nest;
};
d3.keys = function(map) {
var keys = [];
for (var key in map) keys.push(key);
return keys;
};
d3.values = function(map) {
var values = [];
for (var key in map) values.push(map[key]);
return values;
};
d3.entries = function(map) {
var entries = [];
for (var key in map) entries.push({
key: key,
value: map[key]
});
return entries;
};
d3.permute = function(array, indexes) {
var permutes = [], i = -1, n = indexes.length;
while (++i < n) permutes[i] = array[indexes[i]];
return permutes;
};
d3.merge = function(arrays) {
return Array.prototype.concat.apply([], arrays);
};
function d3_collapse(s) {
return s.trim().replace(/\s+/g, " ");
}
d3.range = function(start, stop, step) {
if (arguments.length < 3) {
step = 1;
if (arguments.length < 2) {
stop = start;
start = 0;
}
}
if ((stop - start) / step === Infinity) throw new Error("infinite range");
var range = [], k = d3_range_integerScale(Math.abs(step)), i = -1, j;
start *= k, stop *= k, step *= k;
if (step < 0) while ((j = start + step * ++i) > stop) range.push(j / k); else while ((j = start + step * ++i) < stop) range.push(j / k);
return range;
};
function d3_range_integerScale(x) {
var k = 1;
while (x * k % 1) k *= 10;
return k;
}
d3.requote = function(s) {
return s.replace(d3_requote_re, "\\$&");
};
var d3_requote_re = /[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g;
d3.round = function(x, n) {
return n ? Math.round(x * (n = Math.pow(10, n))) / n : Math.round(x);
};
d3.xhr = function(url, mimeType, callback) {
var xhr = {}, dispatch = d3.dispatch("progress", "load", "error"), headers = {}, response = d3_identity, request = new (d3_window.XDomainRequest && /^(http(s)?:)?\/\//.test(url) ? XDomainRequest : XMLHttpRequest)();
"onload" in request ? request.onload = request.onerror = respond : request.onreadystatechange = function() {
request.readyState > 3 && respond();
};
function respond() {
var s = request.status;
!s && request.responseText || s >= 200 && s < 300 || s === 304 ? dispatch.load.call(xhr, response.call(xhr, request)) : dispatch.error.call(xhr, request);
}
request.onprogress = function(event) {
var o = d3.event;
d3.event = event;
try {
dispatch.progress.call(xhr, request);
} finally {
d3.event = o;
}
};
xhr.header = function(name, value) {
name = (name + "").toLowerCase();
if (arguments.length < 2) return headers[name];
if (value == null) delete headers[name]; else headers[name] = value + "";
return xhr;
};
xhr.mimeType = function(value) {
if (!arguments.length) return mimeType;
mimeType = value == null ? null : value + "";
return xhr;
};
xhr.response = function(value) {
response = value;
return xhr;
};
[ "get", "post" ].forEach(function(method) {
xhr[method] = function() {
return xhr.send.apply(xhr, [ method ].concat(d3_array(arguments)));
};
});
xhr.send = function(method, data, callback) {
if (arguments.length === 2 && typeof data === "function") callback = data, data = null;
request.open(method, url, true);
if (mimeType != null && !("accept" in headers)) headers["accept"] = mimeType + ",*/*";
if (request.setRequestHeader) for (var name in headers) request.setRequestHeader(name, headers[name]);
if (mimeType != null && request.overrideMimeType) request.overrideMimeType(mimeType);
if (callback != null) xhr.on("error", callback).on("load", function(request) {
callback(null, request);
});
request.send(data == null ? null : data);
return xhr;
};
xhr.abort = function() {
request.abort();
return xhr;
};
d3.rebind(xhr, dispatch, "on");
if (arguments.length === 2 && typeof mimeType === "function") callback = mimeType,
mimeType = null;
return callback == null ? xhr : xhr.get(d3_xhr_fixCallback(callback));
};
function d3_xhr_fixCallback(callback) {
return callback.length === 1 ? function(error, request) {
callback(error == null ? request : null);
} : callback;
}
d3.text = function() {
return d3.xhr.apply(d3, arguments).response(d3_text);
};
function d3_text(request) {
return request.responseText;
}
d3.json = function(url, callback) {
return d3.xhr(url, "application/json", callback).response(d3_json);
};
function d3_json(request) {
return JSON.parse(request.responseText);
}
d3.html = function(url, callback) {
return d3.xhr(url, "text/html", callback).response(d3_html);
};
function d3_html(request) {
var range = d3_document.createRange();
range.selectNode(d3_document.body);
return range.createContextualFragment(request.responseText);
}
d3.xml = function() {
return d3.xhr.apply(d3, arguments).response(d3_xml);
};
function d3_xml(request) {
return request.responseXML;
}
var d3_nsPrefix = {
svg: "http://www.w3.org/2000/svg",
xhtml: "http://www.w3.org/1999/xhtml",
xlink: "http://www.w3.org/1999/xlink",
xml: "http://www.w3.org/XML/1998/namespace",
xmlns: "http://www.w3.org/2000/xmlns/"
};
d3.ns = {
prefix: d3_nsPrefix,
qualify: function(name) {
var i = name.indexOf(":"), prefix = name;
if (i >= 0) {
prefix = name.substring(0, i);
name = name.substring(i + 1);
}
return d3_nsPrefix.hasOwnProperty(prefix) ? {
space: d3_nsPrefix[prefix],
local: name
} : name;
}
};
d3.dispatch = function() {
var dispatch = new d3_dispatch(), i = -1, n = arguments.length;
while (++i < n) dispatch[arguments[i]] = d3_dispatch_event(dispatch);
return dispatch;
};
function d3_dispatch() {}
d3_dispatch.prototype.on = function(type, listener) {
var i = type.indexOf("."), name = "";
if (i > 0) {
name = type.substring(i + 1);
type = type.substring(0, i);
}
return arguments.length < 2 ? this[type].on(name) : this[type].on(name, listener);
};
function d3_dispatch_event(dispatch) {
var listeners = [], listenerByName = new d3_Map();
function event() {
var z = listeners, i = -1, n = z.length, l;
while (++i < n) if (l = z[i].on) l.apply(this, arguments);
return dispatch;
}
event.on = function(name, listener) {
var l = listenerByName.get(name), i;
if (arguments.length < 2) return l && l.on;
if (l) {
l.on = null;
listeners = listeners.slice(0, i = listeners.indexOf(l)).concat(listeners.slice(i + 1));
listenerByName.remove(name);
}
if (listener) listeners.push(listenerByName.set(name, {
on: listener
}));
return dispatch;
};
return event;
}
d3.format = function(specifier) {
var match = d3_format_re.exec(specifier), fill = match[1] || " ", align = match[2] || ">", sign = match[3] || "", basePrefix = match[4] || "", zfill = match[5], width = +match[6], comma = match[7], precision = match[8], type = match[9], scale = 1, suffix = "", integer = false;
if (precision) precision = +precision.substring(1);
if (zfill || fill === "0" && align === "=") {
zfill = fill = "0";
align = "=";
if (comma) width -= Math.floor((width - 1) / 4);
}
switch (type) {
case "n":
comma = true;
type = "g";
break;
case "%":
scale = 100;
suffix = "%";
type = "f";
break;
case "p":
scale = 100;
suffix = "%";
type = "r";
break;
case "b":
case "o":
case "x":
case "X":
if (basePrefix) basePrefix = "0" + type.toLowerCase();
case "c":
case "d":
integer = true;
precision = 0;
break;
case "s":
scale = -1;
type = "r";
break;
}
if (basePrefix === "#") basePrefix = "";
if (type == "r" && !precision) type = "g";
type = d3_format_types.get(type) || d3_format_typeDefault;
var zcomma = zfill && comma;
return function(value) {
if (integer && value % 1) return "";
var negative = value < 0 || value === 0 && 1 / value < 0 ? (value = -value, "-") : sign;
if (scale < 0) {
var prefix = d3.formatPrefix(value, precision);
value = prefix.scale(value);
suffix = prefix.symbol;
} else {
value *= scale;
}
value = type(value, precision);
if (!zfill && comma) value = d3_format_group(value);
var length = basePrefix.length + value.length + (zcomma ? 0 : negative.length), padding = length < width ? new Array(length = width - length + 1).join(fill) : "";
if (zcomma) value = d3_format_group(padding + value);
if (d3_format_decimalPoint) value.replace(".", d3_format_decimalPoint);
negative += basePrefix;
return (align === "<" ? negative + value + padding : align === ">" ? padding + negative + value : align === "^" ? padding.substring(0, length >>= 1) + negative + value + padding.substring(length) : negative + (zcomma ? value : padding + value)) + suffix;
};
};
var d3_format_re = /(?:([^{])?([<>=^]))?([+\- ])?(#)?(0)?([0-9]+)?(,)?(\.[0-9]+)?([a-zA-Z%])?/;
var d3_format_types = d3.map({
b: function(x) {
return x.toString(2);
},
c: function(x) {
return String.fromCharCode(x);
},
o: function(x) {
return x.toString(8);
},
x: function(x) {
return x.toString(16);
},
X: function(x) {
return x.toString(16).toUpperCase();
},
g: function(x, p) {
return x.toPrecision(p);
},
e: function(x, p) {
return x.toExponential(p);
},
f: function(x, p) {
return x.toFixed(p);
},
r: function(x, p) {
return (x = d3.round(x, d3_format_precision(x, p))).toFixed(Math.max(0, Math.min(20, d3_format_precision(x * (1 + 1e-15), p))));
}
});
function d3_format_precision(x, p) {
return p - (x ? Math.ceil(Math.log(x) / Math.LN10) : 1);
}
function d3_format_typeDefault(x) {
return x + "";
}
var d3_format_group = d3_identity;
if (d3_format_grouping) {
var d3_format_groupingLength = d3_format_grouping.length;
d3_format_group = function(value) {
var i = value.lastIndexOf("."), f = i >= 0 ? "." + value.substring(i + 1) : (i = value.length,
""), t = [], j = 0, g = d3_format_grouping[0];
while (i > 0 && g > 0) {
t.push(value.substring(i -= g, i + g));
g = d3_format_grouping[j = (j + 1) % d3_format_groupingLength];
}
return t.reverse().join(d3_format_thousandsSeparator || "") + f;
};
}
var d3_formatPrefixes = [ "y", "z", "a", "f", "p", "n", "µ", "m", "", "k", "M", "G", "T", "P", "E", "Z", "Y" ].map(d3_formatPrefix);
d3.formatPrefix = function(value, precision) {
var i = 0;
if (value) {
if (value < 0) value *= -1;
if (precision) value = d3.round(value, d3_format_precision(value, precision));
i = 1 + Math.floor(1e-12 + Math.log(value) / Math.LN10);
i = Math.max(-24, Math.min(24, Math.floor((i <= 0 ? i + 1 : i - 1) / 3) * 3));
}
return d3_formatPrefixes[8 + i / 3];
};
function d3_formatPrefix(d, i) {
var k = Math.pow(10, Math.abs(8 - i) * 3);
return {
scale: i > 8 ? function(d) {
return d / k;
} : function(d) {
return d * k;
},
symbol: d
};
}
var d3_ease_default = function() {
return d3_identity;
};
var d3_ease = d3.map({
linear: d3_ease_default,
poly: d3_ease_poly,
quad: function() {
return d3_ease_quad;
},
cubic: function() {
return d3_ease_cubic;
},
sin: function() {
return d3_ease_sin;
},
exp: function() {
return d3_ease_exp;
},
circle: function() {
return d3_ease_circle;
},
elastic: d3_ease_elastic,
back: d3_ease_back,
bounce: function() {
return d3_ease_bounce;
}
});
var d3_ease_mode = d3.map({
"in": d3_identity,
out: d3_ease_reverse,
"in-out": d3_ease_reflect,
"out-in": function(f) {
return d3_ease_reflect(d3_ease_reverse(f));
}
});
d3.ease = function(name) {
var i = name.indexOf("-"), t = i >= 0 ? name.substring(0, i) : name, m = i >= 0 ? name.substring(i + 1) : "in";
t = d3_ease.get(t) || d3_ease_default;
m = d3_ease_mode.get(m) || d3_identity;
return d3_ease_clamp(m(t.apply(null, Array.prototype.slice.call(arguments, 1))));
};
function d3_ease_clamp(f) {
return function(t) {
return t <= 0 ? 0 : t >= 1 ? 1 : f(t);
};
}
function d3_ease_reverse(f) {
return function(t) {
return 1 - f(1 - t);
};
}
function d3_ease_reflect(f) {
return function(t) {
return .5 * (t < .5 ? f(2 * t) : 2 - f(2 - 2 * t));
};
}
function d3_ease_quad(t) {
return t * t;
}
function d3_ease_cubic(t) {
return t * t * t;
}
function d3_ease_cubicInOut(t) {
if (t <= 0) return 0;
if (t >= 1) return 1;
var t2 = t * t, t3 = t2 * t;
return 4 * (t < .5 ? t3 : 3 * (t - t2) + t3 - .75);
}
function d3_ease_poly(e) {
return function(t) {
return Math.pow(t, e);
};
}
function d3_ease_sin(t) {
return 1 - Math.cos(t * π / 2);
}
function d3_ease_exp(t) {
return Math.pow(2, 10 * (t - 1));
}
function d3_ease_circle(t) {
return 1 - Math.sqrt(1 - t * t);
}
function d3_ease_elastic(a, p) {
var s;
if (arguments.length < 2) p = .45;
if (arguments.length) s = p / (2 * π) * Math.asin(1 / a); else a = 1, s = p / 4;
return function(t) {
return 1 + a * Math.pow(2, 10 * -t) * Math.sin((t - s) * 2 * π / p);
};
}
function d3_ease_back(s) {
if (!s) s = 1.70158;
return function(t) {
return t * t * ((s + 1) * t - s);
};
}
function d3_ease_bounce(t) {
return t < 1 / 2.75 ? 7.5625 * t * t : t < 2 / 2.75 ? 7.5625 * (t -= 1.5 / 2.75) * t + .75 : t < 2.5 / 2.75 ? 7.5625 * (t -= 2.25 / 2.75) * t + .9375 : 7.5625 * (t -= 2.625 / 2.75) * t + .984375;
}
d3.event = null;
function d3_eventCancel() {
d3.event.stopPropagation();
d3.event.preventDefault();
}
function d3_eventSource() {
var e = d3.event, s;
while (s = e.sourceEvent) e = s;
return e;
}
function d3_eventDispatch(target) {
var dispatch = new d3_dispatch(), i = 0, n = arguments.length;
while (++i < n) dispatch[arguments[i]] = d3_dispatch_event(dispatch);
dispatch.of = function(thiz, argumentz) {
return function(e1) {
try {
var e0 = e1.sourceEvent = d3.event;
e1.target = target;
d3.event = e1;
dispatch[e1.type].apply(thiz, argumentz);
} finally {
d3.event = e0;
}
};
};
return dispatch;
}
d3.transform = function(string) {
var g = d3_document.createElementNS(d3.ns.prefix.svg, "g");
return (d3.transform = function(string) {
g.setAttribute("transform", string);
var t = g.transform.baseVal.consolidate();
return new d3_transform(t ? t.matrix : d3_transformIdentity);
})(string);
};
function d3_transform(m) {
var r0 = [ m.a, m.b ], r1 = [ m.c, m.d ], kx = d3_transformNormalize(r0), kz = d3_transformDot(r0, r1), ky = d3_transformNormalize(d3_transformCombine(r1, r0, -kz)) || 0;
if (r0[0] * r1[1] < r1[0] * r0[1]) {
r0[0] *= -1;
r0[1] *= -1;
kx *= -1;
kz *= -1;
}
this.rotate = (kx ? Math.atan2(r0[1], r0[0]) : Math.atan2(-r1[0], r1[1])) * d3_degrees;
this.translate = [ m.e, m.f ];
this.scale = [ kx, ky ];
this.skew = ky ? Math.atan2(kz, ky) * d3_degrees : 0;
}
d3_transform.prototype.toString = function() {
return "translate(" + this.translate + ")rotate(" + this.rotate + ")skewX(" + this.skew + ")scale(" + this.scale + ")";
};
function d3_transformDot(a, b) {
return a[0] * b[0] + a[1] * b[1];
}
function d3_transformNormalize(a) {
var k = Math.sqrt(d3_transformDot(a, a));
if (k) {
a[0] /= k;
a[1] /= k;
}
return k;
}
function d3_transformCombine(a, b, k) {
a[0] += k * b[0];
a[1] += k * b[1];
return a;
}
var d3_transformIdentity = {
a: 1,
b: 0,
c: 0,
d: 1,
e: 0,
f: 0
};
d3.interpolate = function(a, b) {
var i = d3.interpolators.length, f;
while (--i >= 0 && !(f = d3.interpolators[i](a, b))) ;
return f;
};
d3.interpolateNumber = function(a, b) {
b -= a;
return function(t) {
return a + b * t;
};
};
d3.interpolateRound = function(a, b) {
b -= a;
return function(t) {
return Math.round(a + b * t);
};
};
d3.interpolateString = function(a, b) {
var m, i, j, s0 = 0, s1 = 0, s = [], q = [], n, o;
d3_interpolate_number.lastIndex = 0;
for (i = 0; m = d3_interpolate_number.exec(b); ++i) {
if (m.index) s.push(b.substring(s0, s1 = m.index));
q.push({
i: s.length,
x: m[0]
});
s.push(null);
s0 = d3_interpolate_number.lastIndex;
}
if (s0 < b.length) s.push(b.substring(s0));
for (i = 0, n = q.length; (m = d3_interpolate_number.exec(a)) && i < n; ++i) {
o = q[i];
if (o.x == m[0]) {
if (o.i) {
if (s[o.i + 1] == null) {
s[o.i - 1] += o.x;
s.splice(o.i, 1);
for (j = i + 1; j < n; ++j) q[j].i--;
} else {
s[o.i - 1] += o.x + s[o.i + 1];
s.splice(o.i, 2);
for (j = i + 1; j < n; ++j) q[j].i -= 2;
}
} else {
if (s[o.i + 1] == null) {
s[o.i] = o.x;
} else {
s[o.i] = o.x + s[o.i + 1];
s.splice(o.i + 1, 1);
for (j = i + 1; j < n; ++j) q[j].i--;
}
}
q.splice(i, 1);
n--;
i--;
} else {
o.x = d3.interpolateNumber(parseFloat(m[0]), parseFloat(o.x));
}
}
while (i < n) {
o = q.pop();
if (s[o.i + 1] == null) {
s[o.i] = o.x;
} else {
s[o.i] = o.x + s[o.i + 1];
s.splice(o.i + 1, 1);
}
n--;
}
if (s.length === 1) {
return s[0] == null ? q[0].x : function() {
return b;
};
}
return function(t) {
for (i = 0; i < n; ++i) s[(o = q[i]).i] = o.x(t);
return s.join("");
};
};
d3.interpolateTransform = function(a, b) {
var s = [], q = [], n, A = d3.transform(a), B = d3.transform(b), ta = A.translate, tb = B.translate, ra = A.rotate, rb = B.rotate, wa = A.skew, wb = B.skew, ka = A.scale, kb = B.scale;
if (ta[0] != tb[0] || ta[1] != tb[1]) {
s.push("translate(", null, ",", null, ")");
q.push({
i: 1,
x: d3.interpolateNumber(ta[0], tb[0])
}, {
i: 3,
x: d3.interpolateNumber(ta[1], tb[1])
});
} else if (tb[0] || tb[1]) {
s.push("translate(" + tb + ")");
} else {
s.push("");
}
if (ra != rb) {
if (ra - rb > 180) rb += 360; else if (rb - ra > 180) ra += 360;
q.push({
i: s.push(s.pop() + "rotate(", null, ")") - 2,
x: d3.interpolateNumber(ra, rb)
});
} else if (rb) {
s.push(s.pop() + "rotate(" + rb + ")");
}
if (wa != wb) {
q.push({
i: s.push(s.pop() + "skewX(", null, ")") - 2,
x: d3.interpolateNumber(wa, wb)
});
} else if (wb) {
s.push(s.pop() + "skewX(" + wb + ")");
}
if (ka[0] != kb[0] || ka[1] != kb[1]) {
n = s.push(s.pop() + "scale(", null, ",", null, ")");
q.push({
i: n - 4,
x: d3.interpolateNumber(ka[0], kb[0])
}, {
i: n - 2,
x: d3.interpolateNumber(ka[1], kb[1])
});
} else if (kb[0] != 1 || kb[1] != 1) {
s.push(s.pop() + "scale(" + kb + ")");
}
n = q.length;
return function(t) {
var i = -1, o;
while (++i < n) s[(o = q[i]).i] = o.x(t);
return s.join("");
};
};
d3.interpolateRgb = function(a, b) {
a = d3.rgb(a);
b = d3.rgb(b);
var ar = a.r, ag = a.g, ab = a.b, br = b.r - ar, bg = b.g - ag, bb = b.b - ab;
return function(t) {
return "#" + d3_rgb_hex(Math.round(ar + br * t)) + d3_rgb_hex(Math.round(ag + bg * t)) + d3_rgb_hex(Math.round(ab + bb * t));
};
};
d3.interpolateHsl = function(a, b) {
a = d3.hsl(a);
b = d3.hsl(b);
var h0 = a.h, s0 = a.s, l0 = a.l, h1 = b.h - h0, s1 = b.s - s0, l1 = b.l - l0;
if (h1 > 180) h1 -= 360; else if (h1 < -180) h1 += 360;
return function(t) {
return d3_hsl_rgb(h0 + h1 * t, s0 + s1 * t, l0 + l1 * t) + "";
};
};
d3.interpolateLab = function(a, b) {
a = d3.lab(a);
b = d3.lab(b);
var al = a.l, aa = a.a, ab = a.b, bl = b.l - al, ba = b.a - aa, bb = b.b - ab;
return function(t) {
return d3_lab_rgb(al + bl * t, aa + ba * t, ab + bb * t) + "";
};
};
d3.interpolateHcl = function(a, b) {
a = d3.hcl(a);
b = d3.hcl(b);
var ah = a.h, ac = a.c, al = a.l, bh = b.h - ah, bc = b.c - ac, bl = b.l - al;
if (bh > 180) bh -= 360; else if (bh < -180) bh += 360;
return function(t) {
return d3_hcl_lab(ah + bh * t, ac + bc * t, al + bl * t) + "";
};
};
d3.interpolateArray = function(a, b) {
var x = [], c = [], na = a.length, nb = b.length, n0 = Math.min(a.length, b.length), i;
for (i = 0; i < n0; ++i) x.push(d3.interpolate(a[i], b[i]));
for (;i < na; ++i) c[i] = a[i];
for (;i < nb; ++i) c[i] = b[i];
return function(t) {
for (i = 0; i < n0; ++i) c[i] = x[i](t);
return c;
};
};
d3.interpolateObject = function(a, b) {
var i = {}, c = {}, k;
for (k in a) {
if (k in b) {
i[k] = d3_interpolateByName(k)(a[k], b[k]);
} else {
c[k] = a[k];
}
}
for (k in b) {
if (!(k in a)) {
c[k] = b[k];
}
}
return function(t) {
for (k in i) c[k] = i[k](t);
return c;
};
};
var d3_interpolate_number = /[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g;
function d3_interpolateByName(name) {
return name == "transform" ? d3.interpolateTransform : d3.interpolate;
}
d3.interpolators = [ d3.interpolateObject, function(a, b) {
return b instanceof Array && d3.interpolateArray(a, b);
}, function(a, b) {
return (typeof a === "string" || typeof b === "string") && d3.interpolateString(a + "", b + "");
}, function(a, b) {
return (typeof b === "string" ? d3_rgb_names.has(b) || /^(#|rgb\(|hsl\()/.test(b) : b instanceof d3_Color) && d3.interpolateRgb(a, b);
}, function(a, b) {
return !isNaN(a = +a) && !isNaN(b = +b) && d3.interpolateNumber(a, b);
} ];
function d3_uninterpolateNumber(a, b) {
b = b - (a = +a) ? 1 / (b - a) : 0;
return function(x) {
return (x - a) * b;
};
}
function d3_uninterpolateClamp(a, b) {
b = b - (a = +a) ? 1 / (b - a) : 0;
return function(x) {
return Math.max(0, Math.min(1, (x - a) * b));
};
}
function d3_Color() {}
d3_Color.prototype.toString = function() {
return this.rgb() + "";
};
d3.rgb = function(r, g, b) {
return arguments.length === 1 ? r instanceof d3_Rgb ? d3_rgb(r.r, r.g, r.b) : d3_rgb_parse("" + r, d3_rgb, d3_hsl_rgb) : d3_rgb(~~r, ~~g, ~~b);
};
function d3_rgb(r, g, b) {
return new d3_Rgb(r, g, b);
}
function d3_Rgb(r, g, b) {
this.r = r;
this.g = g;
this.b = b;
}
var d3_rgbPrototype = d3_Rgb.prototype = new d3_Color();
d3_rgbPrototype.brighter = function(k) {
k = Math.pow(.7, arguments.length ? k : 1);
var r = this.r, g = this.g, b = this.b, i = 30;
if (!r && !g && !b) return d3_rgb(i, i, i);
if (r && r < i) r = i;
if (g && g < i) g = i;
if (b && b < i) b = i;
return d3_rgb(Math.min(255, Math.floor(r / k)), Math.min(255, Math.floor(g / k)), Math.min(255, Math.floor(b / k)));
};
d3_rgbPrototype.darker = function(k) {
k = Math.pow(.7, arguments.length ? k : 1);
return d3_rgb(Math.floor(k * this.r), Math.floor(k * this.g), Math.floor(k * this.b));
};
d3_rgbPrototype.hsl = function() {
return d3_rgb_hsl(this.r, this.g, this.b);
};
d3_rgbPrototype.toString = function() {
return "#" + d3_rgb_hex(this.r) + d3_rgb_hex(this.g) + d3_rgb_hex(this.b);
};
function d3_rgb_hex(v) {
return v < 16 ? "0" + Math.max(0, v).toString(16) : Math.min(255, v).toString(16);
}
function d3_rgb_parse(format, rgb, hsl) {
var r = 0, g = 0, b = 0, m1, m2, name;
m1 = /([a-z]+)\((.*)\)/i.exec(format);
if (m1) {
m2 = m1[2].split(",");
switch (m1[1]) {
case "hsl":
{
return hsl(parseFloat(m2[0]), parseFloat(m2[1]) / 100, parseFloat(m2[2]) / 100);
}
case "rgb":
{
return rgb(d3_rgb_parseNumber(m2[0]), d3_rgb_parseNumber(m2[1]), d3_rgb_parseNumber(m2[2]));
}
}
}
if (name = d3_rgb_names.get(format)) return rgb(name.r, name.g, name.b);
if (format != null && format.charAt(0) === "#") {
if (format.length === 4) {
r = format.charAt(1);
r += r;
g = format.charAt(2);
g += g;
b = format.charAt(3);
b += b;
} else if (format.length === 7) {
r = format.substring(1, 3);
g = format.substring(3, 5);
b = format.substring(5, 7);
}
r = parseInt(r, 16);
g = parseInt(g, 16);
b = parseInt(b, 16);
}
return rgb(r, g, b);
}
function d3_rgb_hsl(r, g, b) {
var min = Math.min(r /= 255, g /= 255, b /= 255), max = Math.max(r, g, b), d = max - min, h, s, l = (max + min) / 2;
if (d) {
s = l < .5 ? d / (max + min) : d / (2 - max - min);
if (r == max) h = (g - b) / d + (g < b ? 6 : 0); else if (g == max) h = (b - r) / d + 2; else h = (r - g) / d + 4;
h *= 60;
} else {
s = h = 0;
}
return d3_hsl(h, s, l);
}
function d3_rgb_lab(r, g, b) {
r = d3_rgb_xyz(r);
g = d3_rgb_xyz(g);
b = d3_rgb_xyz(b);
var x = d3_xyz_lab((.4124564 * r + .3575761 * g + .1804375 * b) / d3_lab_X), y = d3_xyz_lab((.2126729 * r + .7151522 * g + .072175 * b) / d3_lab_Y), z = d3_xyz_lab((.0193339 * r + .119192 * g + .9503041 * b) / d3_lab_Z);
return d3_lab(116 * y - 16, 500 * (x - y), 200 * (y - z));
}
function d3_rgb_xyz(r) {
return (r /= 255) <= .04045 ? r / 12.92 : Math.pow((r + .055) / 1.055, 2.4);
}
function d3_rgb_parseNumber(c) {
var f = parseFloat(c);
return c.charAt(c.length - 1) === "%" ? Math.round(f * 2.55) : f;
}
var d3_rgb_names = d3.map({
aliceblue: "#f0f8ff",
antiquewhite: "#faebd7",
aqua: "#00ffff",
aquamarine: "#7fffd4",
azure: "#f0ffff",
beige: "#f5f5dc",
bisque: "#ffe4c4",
black: "#000000",
blanchedalmond: "#ffebcd",
blue: "#0000ff",
blueviolet: "#8a2be2",
brown: "#a52a2a",
burlywood: "#deb887",
cadetblue: "#5f9ea0",
chartreuse: "#7fff00",
chocolate: "#d2691e",
coral: "#ff7f50",
cornflowerblue: "#6495ed",
cornsilk: "#fff8dc",
crimson: "#dc143c",
cyan: "#00ffff",
darkblue: "#00008b",
darkcyan: "#008b8b",
darkgoldenrod: "#b8860b",
darkgray: "#a9a9a9",
darkgreen: "#006400",
darkgrey: "#a9a9a9",
darkkhaki: "#bdb76b",
darkmagenta: "#8b008b",
darkolivegreen: "#556b2f",
darkorange: "#ff8c00",
darkorchid: "#9932cc",
darkred: "#8b0000",
darksalmon: "#e9967a",
darkseagreen: "#8fbc8f",
darkslateblue: "#483d8b",
darkslategray: "#2f4f4f",
darkslategrey: "#2f4f4f",
darkturquoise: "#00ced1",
darkviolet: "#9400d3",
deeppink: "#ff1493",
deepskyblue: "#00bfff",
dimgray: "#696969",
dimgrey: "#696969",
dodgerblue: "#1e90ff",
firebrick: "#b22222",
floralwhite: "#fffaf0",
forestgreen: "#228b22",
fuchsia: "#ff00ff",
gainsboro: "#dcdcdc",
ghostwhite: "#f8f8ff",
gold: "#ffd700",
goldenrod: "#daa520",
gray: "#808080",
green: "#008000",
greenyellow: "#adff2f",
grey: "#808080",
honeydew: "#f0fff0",
hotpink: "#ff69b4",
indianred: "#cd5c5c",
indigo: "#4b0082",
ivory: "#fffff0",
khaki: "#f0e68c",
lavender: "#e6e6fa",
lavenderblush: "#fff0f5",
lawngreen: "#7cfc00",
lemonchiffon: "#fffacd",
lightblue: "#add8e6",
lightcoral: "#f08080",
lightcyan: "#e0ffff",
lightgoldenrodyellow: "#fafad2",
lightgray: "#d3d3d3",
lightgreen: "#90ee90",
lightgrey: "#d3d3d3",
lightpink: "#ffb6c1",
lightsalmon: "#ffa07a",
lightseagreen: "#20b2aa",
lightskyblue: "#87cefa",
lightslategray: "#778899",
lightslategrey: "#778899",
lightsteelblue: "#b0c4de",
lightyellow: "#ffffe0",
lime: "#00ff00",
limegreen: "#32cd32",
linen: "#faf0e6",
magenta: "#ff00ff",
maroon: "#800000",
mediumaquamarine: "#66cdaa",
mediumblue: "#0000cd",
mediumorchid: "#ba55d3",
mediumpurple: "#9370db",
mediumseagreen: "#3cb371",
mediumslateblue: "#7b68ee",
mediumspringgreen: "#00fa9a",
mediumturquoise: "#48d1cc",
mediumvioletred: "#c71585",
midnightblue: "#191970",
mintcream: "#f5fffa",
mistyrose: "#ffe4e1",
moccasin: "#ffe4b5",
navajowhite: "#ffdead",
navy: "#000080",
oldlace: "#fdf5e6",
olive: "#808000",
olivedrab: "#6b8e23",
orange: "#ffa500",
orangered: "#ff4500",
orchid: "#da70d6",
palegoldenrod: "#eee8aa",
palegreen: "#98fb98",
paleturquoise: "#afeeee",
palevioletred: "#db7093",
papayawhip: "#ffefd5",
peachpuff: "#ffdab9",
peru: "#cd853f",
pink: "#ffc0cb",
plum: "#dda0dd",
powderblue: "#b0e0e6",
purple: "#800080",
red: "#ff0000",
rosybrown: "#bc8f8f",
royalblue: "#4169e1",
saddlebrown: "#8b4513",
salmon: "#fa8072",
sandybrown: "#f4a460",
seagreen: "#2e8b57",
seashell: "#fff5ee",
sienna: "#a0522d",
silver: "#c0c0c0",
skyblue: "#87ceeb",
slateblue: "#6a5acd",
slategray: "#708090",
slategrey: "#708090",
snow: "#fffafa",
springgreen: "#00ff7f",
steelblue: "#4682b4",
tan: "#d2b48c",
teal: "#008080",
thistle: "#d8bfd8",
tomato: "#ff6347",
turquoise: "#40e0d0",
violet: "#ee82ee",
wheat: "#f5deb3",
white: "#ffffff",
whitesmoke: "#f5f5f5",
yellow: "#ffff00",
yellowgreen: "#9acd32"
});
d3_rgb_names.forEach(function(key, value) {
d3_rgb_names.set(key, d3_rgb_parse(value, d3_rgb, d3_hsl_rgb));
});
d3.hsl = function(h, s, l) {
return arguments.length === 1 ? h instanceof d3_Hsl ? d3_hsl(h.h, h.s, h.l) : d3_rgb_parse("" + h, d3_rgb_hsl, d3_hsl) : d3_hsl(+h, +s, +l);
};
function d3_hsl(h, s, l) {
return new d3_Hsl(h, s, l);
}
function d3_Hsl(h, s, l) {
this.h = h;
this.s = s;
this.l = l;
}
var d3_hslPrototype = d3_Hsl.prototype = new d3_Color();
d3_hslPrototype.brighter = function(k) {
k = Math.pow(.7, arguments.length ? k : 1);
return d3_hsl(this.h, this.s, this.l / k);
};
d3_hslPrototype.darker = function(k) {
k = Math.pow(.7, arguments.length ? k : 1);
return d3_hsl(this.h, this.s, k * this.l);
};
d3_hslPrototype.rgb = function() {
return d3_hsl_rgb(this.h, this.s, this.l);
};
function d3_hsl_rgb(h, s, l) {
var m1, m2;
h = h % 360;
if (h < 0) h += 360;
s = s < 0 ? 0 : s > 1 ? 1 : s;
l = l < 0 ? 0 : l > 1 ? 1 : l;
m2 = l <= .5 ? l * (1 + s) : l + s - l * s;
m1 = 2 * l - m2;
function v(h) {
if (h > 360) h -= 360; else if (h < 0) h += 360;
if (h < 60) return m1 + (m2 - m1) * h / 60;
if (h < 180) return m2;
if (h < 240) return m1 + (m2 - m1) * (240 - h) / 60;
return m1;
}
function vv(h) {
return Math.round(v(h) * 255);
}
return d3_rgb(vv(h + 120), vv(h), vv(h - 120));
}
d3.hcl = function(h, c, l) {
return arguments.length === 1 ? h instanceof d3_Hcl ? d3_hcl(h.h, h.c, h.l) : h instanceof d3_Lab ? d3_lab_hcl(h.l, h.a, h.b) : d3_lab_hcl((h = d3_rgb_lab((h = d3.rgb(h)).r, h.g, h.b)).l, h.a, h.b) : d3_hcl(+h, +c, +l);
};
function d3_hcl(h, c, l) {
return new d3_Hcl(h, c, l);
}
function d3_Hcl(h, c, l) {
this.h = h;
this.c = c;
this.l = l;
}
var d3_hclPrototype = d3_Hcl.prototype = new d3_Color();
d3_hclPrototype.brighter = function(k) {
return d3_hcl(this.h, this.c, Math.min(100, this.l + d3_lab_K * (arguments.length ? k : 1)));
};
d3_hclPrototype.darker = function(k) {
return d3_hcl(this.h, this.c, Math.max(0, this.l - d3_lab_K * (arguments.length ? k : 1)));
};
d3_hclPrototype.rgb = function() {
return d3_hcl_lab(this.h, this.c, this.l).rgb();
};
function d3_hcl_lab(h, c, l) {
return d3_lab(l, Math.cos(h *= d3_radians) * c, Math.sin(h) * c);
}
d3.lab = function(l, a, b) {
return arguments.length === 1 ? l instanceof d3_Lab ? d3_lab(l.l, l.a, l.b) : l instanceof d3_Hcl ? d3_hcl_lab(l.l, l.c, l.h) : d3_rgb_lab((l = d3.rgb(l)).r, l.g, l.b) : d3_lab(+l, +a, +b);
};
function d3_lab(l, a, b) {
return new d3_Lab(l, a, b);
}
function d3_Lab(l, a, b) {
this.l = l;
this.a = a;
this.b = b;
}
var d3_lab_K = 18;
var d3_lab_X = .95047, d3_lab_Y = 1, d3_lab_Z = 1.08883;
var d3_labPrototype = d3_Lab.prototype = new d3_Color();
d3_labPrototype.brighter = function(k) {
return d3_lab(Math.min(100, this.l + d3_lab_K * (arguments.length ? k : 1)), this.a, this.b);
};
d3_labPrototype.darker = function(k) {
return d3_lab(Math.max(0, this.l - d3_lab_K * (arguments.length ? k : 1)), this.a, this.b);
};
d3_labPrototype.rgb = function() {
return d3_lab_rgb(this.l, this.a, this.b);
};
function d3_lab_rgb(l, a, b) {
var y = (l + 16) / 116, x = y + a / 500, z = y - b / 200;
x = d3_lab_xyz(x) * d3_lab_X;
y = d3_lab_xyz(y) * d3_lab_Y;
z = d3_lab_xyz(z) * d3_lab_Z;
return d3_rgb(d3_xyz_rgb(3.2404542 * x - 1.5371385 * y - .4985314 * z), d3_xyz_rgb(-.969266 * x + 1.8760108 * y + .041556 * z), d3_xyz_rgb(.0556434 * x - .2040259 * y + 1.0572252 * z));
}
function d3_lab_hcl(l, a, b) {
return d3_hcl(Math.atan2(b, a) / π * 180, Math.sqrt(a * a + b * b), l);
}
function d3_lab_xyz(x) {
return x > .206893034 ? x * x * x : (x - 4 / 29) / 7.787037;
}
function d3_xyz_lab(x) {
return x > .008856 ? Math.pow(x, 1 / 3) : 7.787037 * x + 4 / 29;
}
function d3_xyz_rgb(r) {
return Math.round(255 * (r <= .00304 ? 12.92 * r : 1.055 * Math.pow(r, 1 / 2.4) - .055));
}
function d3_selection(groups) {
d3_arraySubclass(groups, d3_selectionPrototype);
return groups;
}
var d3_select = function(s, n) {
return n.querySelector(s);
}, d3_selectAll = function(s, n) {
return n.querySelectorAll(s);
}, d3_selectRoot = d3_document.documentElement, d3_selectMatcher = d3_selectRoot.matchesSelector || d3_selectRoot.webkitMatchesSelector || d3_selectRoot.mozMatchesSelector || d3_selectRoot.msMatchesSelector || d3_selectRoot.oMatchesSelector, d3_selectMatches = function(n, s) {
return d3_selectMatcher.call(n, s);
};
if (typeof Sizzle === "function") {
d3_select = function(s, n) {
return Sizzle(s, n)[0] || null;
};
d3_selectAll = function(s, n) {
return Sizzle.uniqueSort(Sizzle(s, n));
};
d3_selectMatches = Sizzle.matchesSelector;
}
var d3_selectionPrototype = [];
d3.selection = function() {
return d3_selectionRoot;
};
d3.selection.prototype = d3_selectionPrototype;
d3_selectionPrototype.select = function(selector) {
var subgroups = [], subgroup, subnode, group, node;
if (typeof selector !== "function") selector = d3_selection_selector(selector);
for (var j = -1, m = this.length; ++j < m; ) {
subgroups.push(subgroup = []);
subgroup.parentNode = (group = this[j]).parentNode;
for (var i = -1, n = group.length; ++i < n; ) {
if (node = group[i]) {
subgroup.push(subnode = selector.call(node, node.__data__, i));
if (subnode && "__data__" in node) subnode.__data__ = node.__data__;
} else {
subgroup.push(null);
}
}
}
return d3_selection(subgroups);
};
function d3_selection_selector(selector) {
return function() {
return d3_select(selector, this);
};
}
d3_selectionPrototype.selectAll = function(selector) {
var subgroups = [], subgroup, node;
if (typeof selector !== "function") selector = d3_selection_selectorAll(selector);
for (var j = -1, m = this.length; ++j < m; ) {
for (var group = this[j], i = -1, n = group.length; ++i < n; ) {
if (node = group[i]) {
subgroups.push(subgroup = d3_array(selector.call(node, node.__data__, i)));
subgroup.parentNode = node;
}
}
}
return d3_selection(subgroups);
};
function d3_selection_selectorAll(selector) {
return function() {
return d3_selectAll(selector, this);
};
}
d3_selectionPrototype.attr = function(name, value) {
if (arguments.length < 2) {
if (typeof name === "string") {
var node = this.node();
name = d3.ns.qualify(name);
return name.local ? node.getAttributeNS(name.space, name.local) : node.getAttribute(name);
}
for (value in name) this.each(d3_selection_attr(value, name[value]));
return this;
}
return this.each(d3_selection_attr(name, value));
};
function d3_selection_attr(name, value) {
name = d3.ns.qualify(name);
function attrNull() {
this.removeAttribute(name);
}
function attrNullNS() {
this.removeAttributeNS(name.space, name.local);
}
function attrConstant() {
this.setAttribute(name, value);
}
function attrConstantNS() {
this.setAttributeNS(name.space, name.local, value);
}
function attrFunction() {
var x = value.apply(this, arguments);
if (x == null) this.removeAttribute(name); else this.setAttribute(name, x);
}
function attrFunctionNS() {
var x = value.apply(this, arguments);
if (x == null) this.removeAttributeNS(name.space, name.local); else this.setAttributeNS(name.space, name.local, x);
}
return value == null ? name.local ? attrNullNS : attrNull : typeof value === "function" ? name.local ? attrFunctionNS : attrFunction : name.local ? attrConstantNS : attrConstant;
}
d3_selectionPrototype.classed = function(name, value) {
if (arguments.length < 2) {
if (typeof name === "string") {
var node = this.node(), n = (name = name.trim().split(/^|\s+/g)).length, i = -1;
if (value = node.classList) {
while (++i < n) if (!value.contains(name[i])) return false;
} else {
value = node.className;
if (value.baseVal != null) value = value.baseVal;
while (++i < n) if (!d3_selection_classedRe(name[i]).test(value)) return false;
}
return true;
}
for (value in name) this.each(d3_selection_classed(value, name[value]));
return this;
}
return this.each(d3_selection_classed(name, value));
};
function d3_selection_classedRe(name) {
return new RegExp("(?:^|\\s+)" + d3.requote(name) + "(?:\\s+|$)", "g");
}
function d3_selection_classed(name, value) {
name = name.trim().split(/\s+/).map(d3_selection_classedName);
var n = name.length;
function classedConstant() {
var i = -1;
while (++i < n) name[i](this, value);
}
function classedFunction() {
var i = -1, x = value.apply(this, arguments);
while (++i < n) name[i](this, x);
}
return typeof value === "function" ? classedFunction : classedConstant;
}
function d3_selection_classedName(name) {
var re = d3_selection_classedRe(name);
return function(node, value) {
if (c = node.classList) return value ? c.add(name) : c.remove(name);
var c = node.className, cb = c.baseVal != null, cv = cb ? c.baseVal : c;
if (value) {
re.lastIndex = 0;
if (!re.test(cv)) {
cv = d3_collapse(cv + " " + name);
if (cb) c.baseVal = cv; else node.className = cv;
}
} else if (cv) {
cv = d3_collapse(cv.replace(re, " "));
if (cb) c.baseVal = cv; else node.className = cv;
}
};
}
d3_selectionPrototype.style = function(name, value, priority) {
var n = arguments.length;
if (n < 3) {
if (typeof name !== "string") {
if (n < 2) value = "";
for (priority in name) this.each(d3_selection_style(priority, name[priority], value));
return this;
}
if (n < 2) return d3_window.getComputedStyle(this.node(), null).getPropertyValue(name);
priority = "";
}
return this.each(d3_selection_style(name, value, priority));
};
function d3_selection_style(name, value, priority) {
function styleNull() {
this.style.removeProperty(name);
}
function styleConstant() {
this.style.setProperty(name, value, priority);
}
function styleFunction() {
var x = value.apply(this, arguments);
if (x == null) this.style.removeProperty(name); else this.style.setProperty(name, x, priority);
}
return value == null ? styleNull : typeof value === "function" ? styleFunction : styleConstant;
}
d3_selectionPrototype.property = function(name, value) {
if (arguments.length < 2) {
if (typeof name === "string") return this.node()[name];
for (value in name) this.each(d3_selection_property(value, name[value]));
return this;
}
return this.each(d3_selection_property(name, value));
};
function d3_selection_property(name, value) {
function propertyNull() {
delete this[name];
}
function propertyConstant() {
this[name] = value;
}
function propertyFunction() {
var x = value.apply(this, arguments);
if (x == null) delete this[name]; else this[name] = x;
}
return value == null ? propertyNull : typeof value === "function" ? propertyFunction : propertyConstant;
}
d3_selectionPrototype.text = function(value) {
return arguments.length ? this.each(typeof value === "function" ? function() {
var v = value.apply(this, arguments);
this.textContent = v == null ? "" : v;
} : value == null ? function() {
this.textContent = "";
} : function() {
this.textContent = value;
}) : this.node().textContent;
};
d3_selectionPrototype.html = function(value) {
return arguments.length ? this.each(typeof value === "function" ? function() {
var v = value.apply(this, arguments);
this.innerHTML = v == null ? "" : v;
} : value == null ? function() {
this.innerHTML = "";
} : function() {
this.innerHTML = value;
}) : this.node().innerHTML;
};
d3_selectionPrototype.append = function(name) {
name = d3.ns.qualify(name);
function append() {
return this.appendChild(d3_document.createElementNS(this.namespaceURI, name));
}
function appendNS() {
return this.appendChild(d3_document.createElementNS(name.space, name.local));
}
return this.select(name.local ? appendNS : append);
};
d3_selectionPrototype.insert = function(name, before) {
name = d3.ns.qualify(name);
function insert() {
return this.insertBefore(d3_document.createElementNS(this.namespaceURI, name), d3_select(before, this));
}
function insertNS() {
return this.insertBefore(d3_document.createElementNS(name.space, name.local), d3_select(before, this));
}
return this.select(name.local ? insertNS : insert);
};
d3_selectionPrototype.remove = function() {
return this.each(function() {
var parent = this.parentNode;
if (parent) parent.removeChild(this);
});
};
d3_selectionPrototype.data = function(value, key) {
var i = -1, n = this.length, group, node;
if (!arguments.length) {
value = new Array(n = (group = this[0]).length);
while (++i < n) {
if (node = group[i]) {
value[i] = node.__data__;
}
}
return value;
}
function bind(group, groupData) {
var i, n = group.length, m = groupData.length, n0 = Math.min(n, m), updateNodes = new Array(m), enterNodes = new Array(m), exitNodes = new Array(n), node, nodeData;
if (key) {
var nodeByKeyValue = new d3_Map(), dataByKeyValue = new d3_Map(), keyValues = [], keyValue;
for (i = -1; ++i < n; ) {
keyValue = key.call(node = group[i], node.__data__, i);
if (nodeByKeyValue.has(keyValue)) {
exitNodes[i] = node;
} else {
nodeByKeyValue.set(keyValue, node);
}
keyValues.push(keyValue);
}
for (i = -1; ++i < m; ) {
keyValue = key.call(groupData, nodeData = groupData[i], i);
if (node = nodeByKeyValue.get(keyValue)) {
updateNodes[i] = node;
node.__data__ = nodeData;
} else if (!dataByKeyValue.has(keyValue)) {
enterNodes[i] = d3_selection_dataNode(nodeData);
}
dataByKeyValue.set(keyValue, nodeData);
nodeByKeyValue.remove(keyValue);
}
for (i = -1; ++i < n; ) {
if (nodeByKeyValue.has(keyValues[i])) {
exitNodes[i] = group[i];
}
}
} else {
for (i = -1; ++i < n0; ) {
node = group[i];
nodeData = groupData[i];
if (node) {
node.__data__ = nodeData;
updateNodes[i] = node;
} else {
enterNodes[i] = d3_selection_dataNode(nodeData);
}
}
for (;i < m; ++i) {
enterNodes[i] = d3_selection_dataNode(groupData[i]);
}
for (;i < n; ++i) {
exitNodes[i] = group[i];
}
}
enterNodes.update = updateNodes;
enterNodes.parentNode = updateNodes.parentNode = exitNodes.parentNode = group.parentNode;
enter.push(enterNodes);
update.push(updateNodes);
exit.push(exitNodes);
}
var enter = d3_selection_enter([]), update = d3_selection([]), exit = d3_selection([]);
if (typeof value === "function") {
while (++i < n) {
bind(group = this[i], value.call(group, group.parentNode.__data__, i));
}
} else {
while (++i < n) {
bind(group = this[i], value);
}
}
update.enter = function() {
return enter;
};
update.exit = function() {
return exit;
};
return update;
};
function d3_selection_dataNode(data) {
return {
__data__: data
};
}
d3_selectionPrototype.datum = function(value) {
return arguments.length ? this.property("__data__", value) : this.property("__data__");
};
d3_selectionPrototype.filter = function(filter) {
var subgroups = [], subgroup, group, node;
if (typeof filter !== "function") filter = d3_selection_filter(filter);
for (var j = 0, m = this.length; j < m; j++) {
subgroups.push(subgroup = []);
subgroup.parentNode = (group = this[j]).parentNode;
for (var i = 0, n = group.length; i < n; i++) {
if ((node = group[i]) && filter.call(node, node.__data__, i)) {
subgroup.push(node);
}
}
}
return d3_selection(subgroups);
};
function d3_selection_filter(selector) {
return function() {
return d3_selectMatches(this, selector);
};
}
d3_selectionPrototype.order = function() {
for (var j = -1, m = this.length; ++j < m; ) {
for (var group = this[j], i = group.length - 1, next = group[i], node; --i >= 0; ) {
if (node = group[i]) {
if (next && next !== node.nextSibling) next.parentNode.insertBefore(node, next);
next = node;
}
}
}
return this;
};
d3_selectionPrototype.sort = function(comparator) {
comparator = d3_selection_sortComparator.apply(this, arguments);
for (var j = -1, m = this.length; ++j < m; ) this[j].sort(comparator);
return this.order();
};
function d3_selection_sortComparator(comparator) {
if (!arguments.length) comparator = d3.ascending;
return function(a, b) {
return !a - !b || comparator(a.__data__, b.__data__);
};
}
d3_selectionPrototype.on = function(type, listener, capture) {
var n = arguments.length;
if (n < 3) {
if (typeof type !== "string") {
if (n < 2) listener = false;
for (capture in type) this.each(d3_selection_on(capture, type[capture], listener));
return this;
}
if (n < 2) return (n = this.node()["__on" + type]) && n._;
capture = false;
}
return this.each(d3_selection_on(type, listener, capture));
};
function d3_selection_on(type, listener, capture) {
var name = "__on" + type, i = type.indexOf(".");
if (i > 0) type = type.substring(0, i);
function onRemove() {
var wrapper = this[name];
if (wrapper) {
this.removeEventListener(type, wrapper, wrapper.$);
delete this[name];
}
}
function onAdd() {
var node = this, args = d3_array(arguments);
onRemove.call(this);
this.addEventListener(type, this[name] = wrapper, wrapper.$ = capture);
wrapper._ = listener;
function wrapper(e) {
var o = d3.event;
d3.event = e;
args[0] = node.__data__;
try {
listener.apply(node, args);
} finally {
d3.event = o;
}
}
}
return listener ? onAdd : onRemove;
}
d3_selectionPrototype.each = function(callback) {
return d3_selection_each(this, function(node, i, j) {
callback.call(node, node.__data__, i, j);
});
};
function d3_selection_each(groups, callback) {
for (var j = 0, m = groups.length; j < m; j++) {
for (var group = groups[j], i = 0, n = group.length, node; i < n; i++) {
if (node = group[i]) callback(node, i, j);
}
}
return groups;
}
d3_selectionPrototype.call = function(callback) {
var args = d3_array(arguments);
callback.apply(args[0] = this, args);
return this;
};
d3_selectionPrototype.empty = function() {
return !this.node();
};
d3_selectionPrototype.node = function() {
for (var j = 0, m = this.length; j < m; j++) {
for (var group = this[j], i = 0, n = group.length; i < n; i++) {
var node = group[i];
if (node) return node;
}
}
return null;
};
d3_selectionPrototype.transition = function() {
var id = d3_transitionInheritId || ++d3_transitionId, subgroups = [], subgroup, node, transition = Object.create(d3_transitionInherit);
transition.time = Date.now();
for (var j = -1, m = this.length; ++j < m; ) {
subgroups.push(subgroup = []);
for (var group = this[j], i = -1, n = group.length; ++i < n; ) {
if (node = group[i]) d3_transitionNode(node, i, id, transition);
subgroup.push(node);
}
}
return d3_transition(subgroups, id);
};
var d3_selectionRoot = d3_selection([ [ d3_document ] ]);
d3_selectionRoot[0].parentNode = d3_selectRoot;
d3.select = function(selector) {
return typeof selector === "string" ? d3_selectionRoot.select(selector) : d3_selection([ [ selector ] ]);
};
d3.selectAll = function(selector) {
return typeof selector === "string" ? d3_selectionRoot.selectAll(selector) : d3_selection([ d3_array(selector) ]);
};
function d3_selection_enter(selection) {
d3_arraySubclass(selection, d3_selection_enterPrototype);
return selection;
}
var d3_selection_enterPrototype = [];
d3.selection.enter = d3_selection_enter;
d3.selection.enter.prototype = d3_selection_enterPrototype;
d3_selection_enterPrototype.append = d3_selectionPrototype.append;
d3_selection_enterPrototype.insert = d3_selectionPrototype.insert;
d3_selection_enterPrototype.empty = d3_selectionPrototype.empty;
d3_selection_enterPrototype.node = d3_selectionPrototype.node;
d3_selection_enterPrototype.select = function(selector) {
var subgroups = [], subgroup, subnode, upgroup, group, node;
for (var j = -1, m = this.length; ++j < m; ) {
upgroup = (group = this[j]).update;
subgroups.push(subgroup = []);
subgroup.parentNode = group.parentNode;
for (var i = -1, n = group.length; ++i < n; ) {
if (node = group[i]) {
subgroup.push(upgroup[i] = subnode = selector.call(group.parentNode, node.__data__, i));
subnode.__data__ = node.__data__;
} else {
subgroup.push(null);
}
}
}
return d3_selection(subgroups);
};
function d3_transition(groups, id) {
d3_arraySubclass(groups, d3_transitionPrototype);
groups.id = id;
return groups;
}
var d3_transitionPrototype = [], d3_transitionId = 0, d3_transitionInheritId, d3_transitionInherit = {
ease: d3_ease_cubicInOut,
delay: 0,
duration: 250
};
d3_transitionPrototype.call = d3_selectionPrototype.call;
d3_transitionPrototype.empty = d3_selectionPrototype.empty;
d3_transitionPrototype.node = d3_selectionPrototype.node;
d3.transition = function(selection) {
return arguments.length ? d3_transitionInheritId ? selection.transition() : selection : d3_selectionRoot.transition();
};
d3.transition.prototype = d3_transitionPrototype;
function d3_transitionNode(node, i, id, inherit) {
var lock = node.__transition__ || (node.__transition__ = {
active: 0,
count: 0
}), transition = lock[id];
if (!transition) {
var time = inherit.time;
transition = lock[id] = {
tween: new d3_Map(),
event: d3.dispatch("start", "end"),
time: time,
ease: inherit.ease,
delay: inherit.delay,
duration: inherit.duration
};
++lock.count;
d3.timer(function(elapsed) {
var d = node.__data__, ease = transition.ease, event = transition.event, delay = transition.delay, duration = transition.duration, tweened = [];
return delay <= elapsed ? start(elapsed) : d3.timer(start, delay, time), 1;
function start(elapsed) {
if (lock.active > id) return stop();
lock.active = id;
event.start.call(node, d, i);
transition.tween.forEach(function(key, value) {
if (value = value.call(node, d, i)) {
tweened.push(value);
}
});
if (!tick(elapsed)) d3.timer(tick, 0, time);
return 1;
}
function tick(elapsed) {
if (lock.active !== id) return stop();
var t = (elapsed - delay) / duration, e = ease(t), n = tweened.length;
while (n > 0) {
tweened[--n].call(node, e);
}
if (t >= 1) {
stop();
event.end.call(node, d, i);
return 1;
}
}
function stop() {
if (--lock.count) delete lock[id]; else delete node.__transition__;
return 1;
}
}, 0, time);
return transition;
}
}
d3_transitionPrototype.select = function(selector) {
var id = this.id, subgroups = [], subgroup, subnode, node;
if (typeof selector !== "function") selector = d3_selection_selector(selector);
for (var j = -1, m = this.length; ++j < m; ) {
subgroups.push(subgroup = []);
for (var group = this[j], i = -1, n = group.length; ++i < n; ) {
if ((node = group[i]) && (subnode = selector.call(node, node.__data__, i))) {
if ("__data__" in node) subnode.__data__ = node.__data__;
d3_transitionNode(subnode, i, id, node.__transition__[id]);
subgroup.push(subnode);
} else {
subgroup.push(null);
}
}
}
return d3_transition(subgroups, id);
};
d3_transitionPrototype.selectAll = function(selector) {
var id = this.id, subgroups = [], subgroup, subnodes, node, subnode, transition;
if (typeof selector !== "function") selector = d3_selection_selectorAll(selector);
for (var j = -1, m = this.length; ++j < m; ) {
for (var group = this[j], i = -1, n = group.length; ++i < n; ) {
if (node = group[i]) {
transition = node.__transition__[id];
subnodes = selector.call(node, node.__data__, i);
subgroups.push(subgroup = []);
for (var k = -1, o = subnodes.length; ++k < o; ) {
d3_transitionNode(subnode = subnodes[k], k, id, transition);
subgroup.push(subnode);
}
}
}
}
return d3_transition(subgroups, id);
};
d3_transitionPrototype.filter = function(filter) {
var subgroups = [], subgroup, group, node;
if (typeof filter !== "function") filter = d3_selection_filter(filter);
for (var j = 0, m = this.length; j < m; j++) {
subgroups.push(subgroup = []);
for (var group = this[j], i = 0, n = group.length; i < n; i++) {
if ((node = group[i]) && filter.call(node, node.__data__, i)) {
subgroup.push(node);
}
}
}
return d3_transition(subgroups, this.id, this.time).ease(this.ease());
};
d3_transitionPrototype.attr = function(nameNS, value) {
if (arguments.length < 2) {
for (value in nameNS) this.attr(value, nameNS[value]);
return this;
}
var interpolate = d3_interpolateByName(nameNS), name = d3.ns.qualify(nameNS);
function attrNull() {
this.removeAttribute(name);
}
function attrNullNS() {
this.removeAttributeNS(name.space, name.local);
}
return d3_transition_tween(this, "attr." + nameNS, value, function(b) {
function attrString() {
var a = this.getAttribute(name), i;
return a !== b && (i = interpolate(a, b), function(t) {
this.setAttribute(name, i(t));
});
}
function attrStringNS() {
var a = this.getAttributeNS(name.space, name.local), i;
return a !== b && (i = interpolate(a, b), function(t) {
this.setAttributeNS(name.space, name.local, i(t));
});
}
return b == null ? name.local ? attrNullNS : attrNull : (b += "", name.local ? attrStringNS : attrString);
});
};
d3_transitionPrototype.attrTween = function(nameNS, tween) {
var name = d3.ns.qualify(nameNS);
function attrTween(d, i) {
var f = tween.call(this, d, i, this.getAttribute(name));
return f && function(t) {
this.setAttribute(name, f(t));
};
}
function attrTweenNS(d, i) {
var f = tween.call(this, d, i, this.getAttributeNS(name.space, name.local));
return f && function(t) {
this.setAttributeNS(name.space, name.local, f(t));
};
}
return this.tween("attr." + nameNS, name.local ? attrTweenNS : attrTween);
};
d3_transitionPrototype.style = function(name, value, priority) {
var n = arguments.length;
if (n < 3) {
if (typeof name !== "string") {
if (n < 2) value = "";
for (priority in name) this.style(priority, name[priority], value);
return this;
}
priority = "";
}
var interpolate = d3_interpolateByName(name);
function styleNull() {
this.style.removeProperty(name);
}
return d3_transition_tween(this, "style." + name, value, function(b) {
function styleString() {
var a = d3_window.getComputedStyle(this, null).getPropertyValue(name), i;
return a !== b && (i = interpolate(a, b), function(t) {
this.style.setProperty(name, i(t), priority);
});
}
return b == null ? styleNull : (b += "", styleString);
});
};
d3_transitionPrototype.styleTween = function(name, tween, priority) {
if (arguments.length < 3) priority = "";
return this.tween("style." + name, function(d, i) {
var f = tween.call(this, d, i, d3_window.getComputedStyle(this, null).getPropertyValue(name));
return f && function(t) {
this.style.setProperty(name, f(t), priority);
};
});
};
d3_transitionPrototype.text = function(value) {
return d3_transition_tween(this, "text", value, d3_transition_text);
};
function d3_transition_text(b) {
if (b == null) b = "";
return function() {
this.textContent = b;
};
}
d3_transitionPrototype.remove = function() {
return this.each("end.transition", function() {
var p;
if (!this.__transition__ && (p = this.parentNode)) p.removeChild(this);
});
};
d3_transitionPrototype.ease = function(value) {
var id = this.id;
if (arguments.length < 1) return this.node().__transition__[id].ease;
if (typeof value !== "function") value = d3.ease.apply(d3, arguments);
return d3_selection_each(this, function(node) {
node.__transition__[id].ease = value;
});
};
d3_transitionPrototype.delay = function(value) {
var id = this.id;
return d3_selection_each(this, typeof value === "function" ? function(node, i, j) {
node.__transition__[id].delay = value.call(node, node.__data__, i, j) | 0;
} : (value |= 0, function(node) {
node.__transition__[id].delay = value;
}));
};
d3_transitionPrototype.duration = function(value) {
var id = this.id;
return d3_selection_each(this, typeof value === "function" ? function(node, i, j) {
node.__transition__[id].duration = Math.max(1, value.call(node, node.__data__, i, j) | 0);
} : (value = Math.max(1, value | 0), function(node) {
node.__transition__[id].duration = value;
}));
};
d3_transitionPrototype.each = function(type, listener) {
var id = this.id;
if (arguments.length < 2) {
var inherit = d3_transitionInherit, inheritId = d3_transitionInheritId;
d3_transitionInheritId = id;
d3_selection_each(this, function(node, i, j) {
d3_transitionInherit = node.__transition__[id];
type.call(node, node.__data__, i, j);
});
d3_transitionInherit = inherit;
d3_transitionInheritId = inheritId;
} else {
d3_selection_each(this, function(node) {
node.__transition__[id].event.on(type, listener);
});
}
return this;
};
d3_transitionPrototype.transition = function() {
var id0 = this.id, id1 = ++d3_transitionId, subgroups = [], subgroup, group, node, transition;
for (var j = 0, m = this.length; j < m; j++) {
subgroups.push(subgroup = []);
for (var group = this[j], i = 0, n = group.length; i < n; i++) {
if (node = group[i]) {
transition = Object.create(node.__transition__[id0]);
transition.delay += transition.duration;
d3_transitionNode(node, i, id1, transition);
}
subgroup.push(node);
}
}
return d3_transition(subgroups, id1);
};
d3_transitionPrototype.tween = function(name, tween) {
var id = this.id;
if (arguments.length < 2) return this.node().__transition__[id].tween.get(name);
return d3_selection_each(this, tween == null ? function(node) {
node.__transition__[id].tween.remove(name);
} : function(node) {
node.__transition__[id].tween.set(name, tween);
});
};
function d3_transition_tween(groups, name, value, tween) {
var id = groups.id;
return d3_selection_each(groups, typeof value === "function" ? function(node, i, j) {
node.__transition__[id].tween.set(name, tween(value.call(node, node.__data__, i, j)));
} : (value = tween(value), function(node) {
node.__transition__[id].tween.set(name, value);
}));
}
var d3_timer_id = 0, d3_timer_byId = {}, d3_timer_queue = null, d3_timer_interval, d3_timer_timeout;
d3.timer = function(callback, delay, then) {
if (arguments.length < 3) {
if (arguments.length < 2) delay = 0; else if (!isFinite(delay)) return;
then = Date.now();
}
var timer = d3_timer_byId[callback.id];
if (timer && timer.callback === callback) {
timer.then = then;
timer.delay = delay;
} else d3_timer_byId[callback.id = ++d3_timer_id] = d3_timer_queue = {
callback: callback,
then: then,
delay: delay,
next: d3_timer_queue
};
if (!d3_timer_interval) {
d3_timer_timeout = clearTimeout(d3_timer_timeout);
d3_timer_interval = 1;
d3_timer_frame(d3_timer_step);
}
};
function d3_timer_step() {
var elapsed, now = Date.now(), t1 = d3_timer_queue;
while (t1) {
elapsed = now - t1.then;
if (elapsed >= t1.delay) t1.flush = t1.callback(elapsed);
t1 = t1.next;
}
var delay = d3_timer_flush() - now;
if (delay > 24) {
if (isFinite(delay)) {
clearTimeout(d3_timer_timeout);
d3_timer_timeout = setTimeout(d3_timer_step, delay);
}
d3_timer_interval = 0;
} else {
d3_timer_interval = 1;
d3_timer_frame(d3_timer_step);
}
}
d3.timer.flush = function() {
var elapsed, now = Date.now(), t1 = d3_timer_queue;
while (t1) {
elapsed = now - t1.then;
if (!t1.delay) t1.flush = t1.callback(elapsed);
t1 = t1.next;
}
d3_timer_flush();
};
function d3_timer_flush() {
var t0 = null, t1 = d3_timer_queue, then = Infinity;
while (t1) {
if (t1.flush) {
delete d3_timer_byId[t1.callback.id];
t1 = t0 ? t0.next = t1.next : d3_timer_queue = t1.next;
} else {
then = Math.min(then, t1.then + t1.delay);
t1 = (t0 = t1).next;
}
}
return then;
}
var d3_timer_frame = d3_window.requestAnimationFrame || d3_window.webkitRequestAnimationFrame || d3_window.mozRequestAnimationFrame || d3_window.oRequestAnimationFrame || d3_window.msRequestAnimationFrame || function(callback) {
setTimeout(callback, 17);
};
d3.mouse = function(container) {
return d3_mousePoint(container, d3_eventSource());
};
var d3_mouse_bug44083 = /WebKit/.test(d3_window.navigator.userAgent) ? -1 : 0;
function d3_mousePoint(container, e) {
var svg = container.ownerSVGElement || container;
if (svg.createSVGPoint) {
var point = svg.createSVGPoint();
if (d3_mouse_bug44083 < 0 && (d3_window.scrollX || d3_window.scrollY)) {
svg = d3.select(d3_document.body).append("svg").style("position", "absolute").style("top", 0).style("left", 0);
var ctm = svg[0][0].getScreenCTM();
d3_mouse_bug44083 = !(ctm.f || ctm.e);
svg.remove();
}
if (d3_mouse_bug44083) {
point.x = e.pageX;
point.y = e.pageY;
} else {
point.x = e.clientX;
point.y = e.clientY;
}
point = point.matrixTransform(container.getScreenCTM().inverse());
return [ point.x, point.y ];
}
var rect = container.getBoundingClientRect();
return [ e.clientX - rect.left - container.clientLeft, e.clientY - rect.top - container.clientTop ];
}
d3.touches = function(container, touches) {
if (arguments.length < 2) touches = d3_eventSource().touches;
return touches ? d3_array(touches).map(function(touch) {
var point = d3_mousePoint(container, touch);
point.identifier = touch.identifier;
return point;
}) : [];
};
function d3_noop() {}
d3.scale = {};
function d3_scaleExtent(domain) {
var start = domain[0], stop = domain[domain.length - 1];
return start < stop ? [ start, stop ] : [ stop, start ];
}
function d3_scaleRange(scale) {
return scale.rangeExtent ? scale.rangeExtent() : d3_scaleExtent(scale.range());
}
function d3_scale_nice(domain, nice) {
var i0 = 0, i1 = domain.length - 1, x0 = domain[i0], x1 = domain[i1], dx;
if (x1 < x0) {
dx = i0, i0 = i1, i1 = dx;
dx = x0, x0 = x1, x1 = dx;
}
if (nice = nice(x1 - x0)) {
domain[i0] = nice.floor(x0);
domain[i1] = nice.ceil(x1);
}
return domain;
}
function d3_scale_niceDefault() {
return Math;
}
d3.scale.linear = function() {
return d3_scale_linear([ 0, 1 ], [ 0, 1 ], d3.interpolate, false);
};
function d3_scale_linear(domain, range, interpolate, clamp) {
var output, input;
function rescale() {
var linear = Math.min(domain.length, range.length) > 2 ? d3_scale_polylinear : d3_scale_bilinear, uninterpolate = clamp ? d3_uninterpolateClamp : d3_uninterpolateNumber;
output = linear(domain, range, uninterpolate, interpolate);
input = linear(range, domain, uninterpolate, d3.interpolate);
return scale;
}
function scale(x) {
return output(x);
}
scale.invert = function(y) {
return input(y);
};
scale.domain = function(x) {
if (!arguments.length) return domain;
domain = x.map(Number);
return rescale();
};
scale.range = function(x) {
if (!arguments.length) return range;
range = x;
return rescale();
};
scale.rangeRound = function(x) {
return scale.range(x).interpolate(d3.interpolateRound);
};
scale.clamp = function(x) {
if (!arguments.length) return clamp;
clamp = x;
return rescale();
};
scale.interpolate = function(x) {
if (!arguments.length) return interpolate;
interpolate = x;
return rescale();
};
scale.ticks = function(m) {
return d3_scale_linearTicks(domain, m);
};
scale.tickFormat = function(m) {
return d3_scale_linearTickFormat(domain, m);
};
scale.nice = function() {
d3_scale_nice(domain, d3_scale_linearNice);
return rescale();
};
scale.copy = function() {
return d3_scale_linear(domain, range, interpolate, clamp);
};
return rescale();
}
function d3_scale_linearRebind(scale, linear) {
return d3.rebind(scale, linear, "range", "rangeRound", "interpolate", "clamp");
}
function d3_scale_linearNice(dx) {
dx = Math.pow(10, Math.round(Math.log(dx) / Math.LN10) - 1);
return dx && {
floor: function(x) {
return Math.floor(x / dx) * dx;
},
ceil: function(x) {
return Math.ceil(x / dx) * dx;
}
};
}
function d3_scale_linearTickRange(domain, m) {
var extent = d3_scaleExtent(domain), span = extent[1] - extent[0], step = Math.pow(10, Math.floor(Math.log(span / m) / Math.LN10)), err = m / span * step;
if (err <= .15) step *= 10; else if (err <= .35) step *= 5; else if (err <= .75) step *= 2;
extent[0] = Math.ceil(extent[0] / step) * step;
extent[1] = Math.floor(extent[1] / step) * step + step * .5;
extent[2] = step;
return extent;
}
function d3_scale_linearTicks(domain, m) {
return d3.range.apply(d3, d3_scale_linearTickRange(domain, m));
}
function d3_scale_linearTickFormat(domain, m) {
return d3.format(",." + Math.max(0, -Math.floor(Math.log(d3_scale_linearTickRange(domain, m)[2]) / Math.LN10 + .01)) + "f");
}
function d3_scale_bilinear(domain, range, uninterpolate, interpolate) {
var u = uninterpolate(domain[0], domain[1]), i = interpolate(range[0], range[1]);
return function(x) {
return i(u(x));
};
}
function d3_scale_polylinear(domain, range, uninterpolate, interpolate) {
var u = [], i = [], j = 0, k = Math.min(domain.length, range.length) - 1;
if (domain[k] < domain[0]) {
domain = domain.slice().reverse();
range = range.slice().reverse();
}
while (++j <= k) {
u.push(uninterpolate(domain[j - 1], domain[j]));
i.push(interpolate(range[j - 1], range[j]));
}
return function(x) {
var j = d3.bisect(domain, x, 1, k) - 1;
return i[j](u[j](x));
};
}
d3.scale.log = function() {
return d3_scale_log(d3.scale.linear(), d3_scale_logp);
};
function d3_scale_log(linear, log) {
var pow = log.pow;
function scale(x) {
return linear(log(x));
}
scale.invert = function(x) {
return pow(linear.invert(x));
};
scale.domain = function(x) {
if (!arguments.length) return linear.domain().map(pow);
log = x[0] < 0 ? d3_scale_logn : d3_scale_logp;
pow = log.pow;
linear.domain(x.map(log));
return scale;
};
scale.nice = function() {
linear.domain(d3_scale_nice(linear.domain(), d3_scale_niceDefault));
return scale;
};
scale.ticks = function() {
var extent = d3_scaleExtent(linear.domain()), ticks = [];
if (extent.every(isFinite)) {
var i = Math.floor(extent[0]), j = Math.ceil(extent[1]), u = pow(extent[0]), v = pow(extent[1]);
if (log === d3_scale_logn) {
ticks.push(pow(i));
for (;i++ < j; ) for (var k = 9; k > 0; k--) ticks.push(pow(i) * k);
} else {
for (;i < j; i++) for (var k = 1; k < 10; k++) ticks.push(pow(i) * k);
ticks.push(pow(i));
}
for (i = 0; ticks[i] < u; i++) {}
for (j = ticks.length; ticks[j - 1] > v; j--) {}
ticks = ticks.slice(i, j);
}
return ticks;
};
scale.tickFormat = function(n, format) {
if (arguments.length < 2) format = d3_scale_logFormat;
if (!arguments.length) return format;
var k = Math.max(.1, n / scale.ticks().length), f = log === d3_scale_logn ? (e = -1e-12,
Math.floor) : (e = 1e-12, Math.ceil), e;
return function(d) {
return d / pow(f(log(d) + e)) <= k ? format(d) : "";
};
};
scale.copy = function() {
return d3_scale_log(linear.copy(), log);
};
return d3_scale_linearRebind(scale, linear);
}
var d3_scale_logFormat = d3.format(".0e");
function d3_scale_logp(x) {
return Math.log(x < 0 ? 0 : x) / Math.LN10;
}
function d3_scale_logn(x) {
return -Math.log(x > 0 ? 0 : -x) / Math.LN10;
}
d3_scale_logp.pow = function(x) {
return Math.pow(10, x);
};
d3_scale_logn.pow = function(x) {
return -Math.pow(10, -x);
};
d3.scale.pow = function() {
return d3_scale_pow(d3.scale.linear(), 1);
};
function d3_scale_pow(linear, exponent) {
var powp = d3_scale_powPow(exponent), powb = d3_scale_powPow(1 / exponent);
function scale(x) {
return linear(powp(x));
}
scale.invert = function(x) {
return powb(linear.invert(x));
};
scale.domain = function(x) {
if (!arguments.length) return linear.domain().map(powb);
linear.domain(x.map(powp));
return scale;
};
scale.ticks = function(m) {
return d3_scale_linearTicks(scale.domain(), m);
};
scale.tickFormat = function(m) {
return d3_scale_linearTickFormat(scale.domain(), m);
};
scale.nice = function() {
return scale.domain(d3_scale_nice(scale.domain(), d3_scale_linearNice));
};
scale.exponent = function(x) {
if (!arguments.length) return exponent;
var domain = scale.domain();
powp = d3_scale_powPow(exponent = x);
powb = d3_scale_powPow(1 / exponent);
return scale.domain(domain);
};
scale.copy = function() {
return d3_scale_pow(linear.copy(), exponent);
};
return d3_scale_linearRebind(scale, linear);
}
function d3_scale_powPow(e) {
return function(x) {
return x < 0 ? -Math.pow(-x, e) : Math.pow(x, e);
};
}
d3.scale.sqrt = function() {
return d3.scale.pow().exponent(.5);
};
d3.scale.ordinal = function() {
return d3_scale_ordinal([], {
t: "range",
a: [ [] ]
});
};
function d3_scale_ordinal(domain, ranger) {
var index, range, rangeBand;
function scale(x) {
return range[((index.get(x) || index.set(x, domain.push(x))) - 1) % range.length];
}
function steps(start, step) {
return d3.range(domain.length).map(function(i) {
return start + step * i;
});
}
scale.domain = function(x) {
if (!arguments.length) return domain;
domain = [];
index = new d3_Map();
var i = -1, n = x.length, xi;
while (++i < n) if (!index.has(xi = x[i])) index.set(xi, domain.push(xi));
return scale[ranger.t].apply(scale, ranger.a);
};
scale.range = function(x) {
if (!arguments.length) return range;
range = x;
rangeBand = 0;
ranger = {
t: "range",
a: arguments
};
return scale;
};
scale.rangePoints = function(x, padding) {
if (arguments.length < 2) padding = 0;
var start = x[0], stop = x[1], step = (stop - start) / (Math.max(1, domain.length - 1) + padding);
range = steps(domain.length < 2 ? (start + stop) / 2 : start + step * padding / 2, step);
rangeBand = 0;
ranger = {
t: "rangePoints",
a: arguments
};
return scale;
};
scale.rangeBands = function(x, padding, outerPadding) {
if (arguments.length < 2) padding = 0;
if (arguments.length < 3) outerPadding = padding;
var reverse = x[1] < x[0], start = x[reverse - 0], stop = x[1 - reverse], step = (stop - start) / (domain.length - padding + 2 * outerPadding);
range = steps(start + step * outerPadding, step);
if (reverse) range.reverse();
rangeBand = step * (1 - padding);
ranger = {
t: "rangeBands",
a: arguments
};
return scale;
};
scale.rangeRoundBands = function(x, padding, outerPadding) {
if (arguments.length < 2) padding = 0;
if (arguments.length < 3) outerPadding = padding;
var reverse = x[1] < x[0], start = x[reverse - 0], stop = x[1 - reverse], step = Math.floor((stop - start) / (domain.length - padding + 2 * outerPadding)), error = stop - start - (domain.length - padding) * step;
range = steps(start + Math.round(error / 2), step);
if (reverse) range.reverse();
rangeBand = Math.round(step * (1 - padding));
ranger = {
t: "rangeRoundBands",
a: arguments
};
return scale;
};
scale.rangeBand = function() {
return rangeBand;
};
scale.rangeExtent = function() {
return d3_scaleExtent(ranger.a[0]);
};
scale.copy = function() {
return d3_scale_ordinal(domain, ranger);
};
return scale.domain(domain);
}
d3.scale.category10 = function() {
return d3.scale.ordinal().range(d3_category10);
};
d3.scale.category20 = function() {
return d3.scale.ordinal().range(d3_category20);
};
d3.scale.category20b = function() {
return d3.scale.ordinal().range(d3_category20b);
};
d3.scale.category20c = function() {
return d3.scale.ordinal().range(d3_category20c);
};
var d3_category10 = [ "#1f77b4", "#ff7f0e", "#2ca02c", "#d62728", "#9467bd", "#8c564b", "#e377c2", "#7f7f7f", "#bcbd22", "#17becf" ];
var d3_category20 = [ "#1f77b4", "#aec7e8", "#ff7f0e", "#ffbb78", "#2ca02c", "#98df8a", "#d62728", "#ff9896", "#9467bd", "#c5b0d5", "#8c564b", "#c49c94", "#e377c2", "#f7b6d2", "#7f7f7f", "#c7c7c7", "#bcbd22", "#dbdb8d", "#17becf", "#9edae5" ];
var d3_category20b = [ "#393b79", "#5254a3", "#6b6ecf", "#9c9ede", "#637939", "#8ca252", "#b5cf6b", "#cedb9c", "#8c6d31", "#bd9e39", "#e7ba52", "#e7cb94", "#843c39", "#ad494a", "#d6616b", "#e7969c", "#7b4173", "#a55194", "#ce6dbd", "#de9ed6" ];
var d3_category20c = [ "#3182bd", "#6baed6", "#9ecae1", "#c6dbef", "#e6550d", "#fd8d3c", "#fdae6b", "#fdd0a2", "#31a354", "#74c476", "#a1d99b", "#c7e9c0", "#756bb1", "#9e9ac8", "#bcbddc", "#dadaeb", "#636363", "#969696", "#bdbdbd", "#d9d9d9" ];
d3.scale.quantile = function() {
return d3_scale_quantile([], []);
};
function d3_scale_quantile(domain, range) {
var thresholds;
function rescale() {
var k = 0, q = range.length;
thresholds = [];
while (++k < q) thresholds[k - 1] = d3.quantile(domain, k / q);
return scale;
}
function scale(x) {
if (isNaN(x = +x)) return NaN;
return range[d3.bisect(thresholds, x)];
}
scale.domain = function(x) {
if (!arguments.length) return domain;
domain = x.filter(function(d) {
return !isNaN(d);
}).sort(d3.ascending);
return rescale();
};
scale.range = function(x) {
if (!arguments.length) return range;
range = x;
return rescale();
};
scale.quantiles = function() {
return thresholds;
};
scale.copy = function() {
return d3_scale_quantile(domain, range);
};
return rescale();
}
d3.scale.quantize = function() {
return d3_scale_quantize(0, 1, [ 0, 1 ]);
};
function d3_scale_quantize(x0, x1, range) {
var kx, i;
function scale(x) {
return range[Math.max(0, Math.min(i, Math.floor(kx * (x - x0))))];
}
function rescale() {
kx = range.length / (x1 - x0);
i = range.length - 1;
return scale;
}
scale.domain = function(x) {
if (!arguments.length) return [ x0, x1 ];
x0 = +x[0];
x1 = +x[x.length - 1];
return rescale();
};
scale.range = function(x) {
if (!arguments.length) return range;
range = x;
return rescale();
};
scale.copy = function() {
return d3_scale_quantize(x0, x1, range);
};
return rescale();
}
d3.scale.threshold = function() {
return d3_scale_threshold([ .5 ], [ 0, 1 ]);
};
function d3_scale_threshold(domain, range) {
function scale(x) {
return range[d3.bisect(domain, x)];
}
scale.domain = function(_) {
if (!arguments.length) return domain;
domain = _;
return scale;
};
scale.range = function(_) {
if (!arguments.length) return range;
range = _;
return scale;
};
scale.copy = function() {
return d3_scale_threshold(domain, range);
};
return scale;
}
d3.scale.identity = function() {
return d3_scale_identity([ 0, 1 ]);
};
function d3_scale_identity(domain) {
function identity(x) {
return +x;
}
identity.invert = identity;
identity.domain = identity.range = function(x) {
if (!arguments.length) return domain;
domain = x.map(identity);
return identity;
};
identity.ticks = function(m) {
return d3_scale_linearTicks(domain, m);
};
identity.tickFormat = function(m) {
return d3_scale_linearTickFormat(domain, m);
};
identity.copy = function() {
return d3_scale_identity(domain);
};
return identity;
}
d3.svg = {};
d3.svg.arc = function() {
var innerRadius = d3_svg_arcInnerRadius, outerRadius = d3_svg_arcOuterRadius, startAngle = d3_svg_arcStartAngle, endAngle = d3_svg_arcEndAngle;
function arc() {
var r0 = innerRadius.apply(this, arguments), r1 = outerRadius.apply(this, arguments), a0 = startAngle.apply(this, arguments) + d3_svg_arcOffset, a1 = endAngle.apply(this, arguments) + d3_svg_arcOffset, da = (a1 < a0 && (da = a0,
a0 = a1, a1 = da), a1 - a0), df = da < π ? "0" : "1", c0 = Math.cos(a0), s0 = Math.sin(a0), c1 = Math.cos(a1), s1 = Math.sin(a1);
return da >= d3_svg_arcMax ? r0 ? "M0," + r1 + "A" + r1 + "," + r1 + " 0 1,1 0," + -r1 + "A" + r1 + "," + r1 + " 0 1,1 0," + r1 + "M0," + r0 + "A" + r0 + "," + r0 + " 0 1,0 0," + -r0 + "A" + r0 + "," + r0 + " 0 1,0 0," + r0 + "Z" : "M0," + r1 + "A" + r1 + "," + r1 + " 0 1,1 0," + -r1 + "A" + r1 + "," + r1 + " 0 1,1 0," + r1 + "Z" : r0 ? "M" + r1 * c0 + "," + r1 * s0 + "A" + r1 + "," + r1 + " 0 " + df + ",1 " + r1 * c1 + "," + r1 * s1 + "L" + r0 * c1 + "," + r0 * s1 + "A" + r0 + "," + r0 + " 0 " + df + ",0 " + r0 * c0 + "," + r0 * s0 + "Z" : "M" + r1 * c0 + "," + r1 * s0 + "A" + r1 + "," + r1 + " 0 " + df + ",1 " + r1 * c1 + "," + r1 * s1 + "L0,0" + "Z";
}
arc.innerRadius = function(v) {
if (!arguments.length) return innerRadius;
innerRadius = d3_functor(v);
return arc;
};
arc.outerRadius = function(v) {
if (!arguments.length) return outerRadius;
outerRadius = d3_functor(v);
return arc;
};
arc.startAngle = function(v) {
if (!arguments.length) return startAngle;
startAngle = d3_functor(v);
return arc;
};
arc.endAngle = function(v) {
if (!arguments.length) return endAngle;
endAngle = d3_functor(v);
return arc;
};
arc.centroid = function() {
var r = (innerRadius.apply(this, arguments) + outerRadius.apply(this, arguments)) / 2, a = (startAngle.apply(this, arguments) + endAngle.apply(this, arguments)) / 2 + d3_svg_arcOffset;
return [ Math.cos(a) * r, Math.sin(a) * r ];
};
return arc;
};
var d3_svg_arcOffset = -π / 2, d3_svg_arcMax = 2 * π - 1e-6;
function d3_svg_arcInnerRadius(d) {
return d.innerRadius;
}
function d3_svg_arcOuterRadius(d) {
return d.outerRadius;
}
function d3_svg_arcStartAngle(d) {
return d.startAngle;
}
function d3_svg_arcEndAngle(d) {
return d.endAngle;
}
function d3_svg_line(projection) {
var x = d3_svg_lineX, y = d3_svg_lineY, defined = d3_true, interpolate = d3_svg_lineLinear, interpolateKey = interpolate.key, tension = .7;
function line(data) {
var segments = [], points = [], i = -1, n = data.length, d, fx = d3_functor(x), fy = d3_functor(y);
function segment() {
segments.push("M", interpolate(projection(points), tension));
}
while (++i < n) {
if (defined.call(this, d = data[i], i)) {
points.push([ +fx.call(this, d, i), +fy.call(this, d, i) ]);
} else if (points.length) {
segment();
points = [];
}
}
if (points.length) segment();
return segments.length ? segments.join("") : null;
}
line.x = function(_) {
if (!arguments.length) return x;
x = _;
return line;
};
line.y = function(_) {
if (!arguments.length) return y;
y = _;
return line;
};
line.defined = function(_) {
if (!arguments.length) return defined;
defined = _;
return line;
};
line.interpolate = function(_) {
if (!arguments.length) return interpolateKey;
if (typeof _ === "function") interpolateKey = interpolate = _; else interpolateKey = (interpolate = d3_svg_lineInterpolators.get(_) || d3_svg_lineLinear).key;
return line;
};
line.tension = function(_) {
if (!arguments.length) return tension;
tension = _;
return line;
};
return line;
}
d3.svg.line = function() {
return d3_svg_line(d3_identity);
};
function d3_svg_lineX(d) {
return d[0];
}
function d3_svg_lineY(d) {
return d[1];
}
var d3_svg_lineInterpolators = d3.map({
linear: d3_svg_lineLinear,
"linear-closed": d3_svg_lineLinearClosed,
"step-before": d3_svg_lineStepBefore,
"step-after": d3_svg_lineStepAfter,
basis: d3_svg_lineBasis,
"basis-open": d3_svg_lineBasisOpen,
"basis-closed": d3_svg_lineBasisClosed,
bundle: d3_svg_lineBundle,
cardinal: d3_svg_lineCardinal,
"cardinal-open": d3_svg_lineCardinalOpen,
"cardinal-closed": d3_svg_lineCardinalClosed,
monotone: d3_svg_lineMonotone
});
d3_svg_lineInterpolators.forEach(function(key, value) {
value.key = key;
value.closed = /-closed$/.test(key);
});
function d3_svg_lineLinear(points) {
return points.join("L");
}
function d3_svg_lineLinearClosed(points) {
return d3_svg_lineLinear(points) + "Z";
}
function d3_svg_lineStepBefore(points) {
var i = 0, n = points.length, p = points[0], path = [ p[0], ",", p[1] ];
while (++i < n) path.push("V", (p = points[i])[1], "H", p[0]);
return path.join("");
}
function d3_svg_lineStepAfter(points) {
var i = 0, n = points.length, p = points[0], path = [ p[0], ",", p[1] ];
while (++i < n) path.push("H", (p = points[i])[0], "V", p[1]);
return path.join("");
}
function d3_svg_lineCardinalOpen(points, tension) {
return points.length < 4 ? d3_svg_lineLinear(points) : points[1] + d3_svg_lineHermite(points.slice(1, points.length - 1), d3_svg_lineCardinalTangents(points, tension));
}
function d3_svg_lineCardinalClosed(points, tension) {
return points.length < 3 ? d3_svg_lineLinear(points) : points[0] + d3_svg_lineHermite((points.push(points[0]),
points), d3_svg_lineCardinalTangents([ points[points.length - 2] ].concat(points, [ points[1] ]), tension));
}
function d3_svg_lineCardinal(points, tension) {
return points.length < 3 ? d3_svg_lineLinear(points) : points[0] + d3_svg_lineHermite(points, d3_svg_lineCardinalTangents(points, tension));
}
function d3_svg_lineHermite(points, tangents) {
if (tangents.length < 1 || points.length != tangents.length && points.length != tangents.length + 2) {
return d3_svg_lineLinear(points);
}
var quad = points.length != tangents.length, path = "", p0 = points[0], p = points[1], t0 = tangents[0], t = t0, pi = 1;
if (quad) {
path += "Q" + (p[0] - t0[0] * 2 / 3) + "," + (p[1] - t0[1] * 2 / 3) + "," + p[0] + "," + p[1];
p0 = points[1];
pi = 2;
}
if (tangents.length > 1) {
t = tangents[1];
p = points[pi];
pi++;
path += "C" + (p0[0] + t0[0]) + "," + (p0[1] + t0[1]) + "," + (p[0] - t[0]) + "," + (p[1] - t[1]) + "," + p[0] + "," + p[1];
for (var i = 2; i < tangents.length; i++, pi++) {
p = points[pi];
t = tangents[i];
path += "S" + (p[0] - t[0]) + "," + (p[1] - t[1]) + "," + p[0] + "," + p[1];
}
}
if (quad) {
var lp = points[pi];
path += "Q" + (p[0] + t[0] * 2 / 3) + "," + (p[1] + t[1] * 2 / 3) + "," + lp[0] + "," + lp[1];
}
return path;
}
function d3_svg_lineCardinalTangents(points, tension) {
var tangents = [], a = (1 - tension) / 2, p0, p1 = points[0], p2 = points[1], i = 1, n = points.length;
while (++i < n) {
p0 = p1;
p1 = p2;
p2 = points[i];
tangents.push([ a * (p2[0] - p0[0]), a * (p2[1] - p0[1]) ]);
}
return tangents;
}
function d3_svg_lineBasis(points) {
if (points.length < 3) return d3_svg_lineLinear(points);
var i = 1, n = points.length, pi = points[0], x0 = pi[0], y0 = pi[1], px = [ x0, x0, x0, (pi = points[1])[0] ], py = [ y0, y0, y0, pi[1] ], path = [ x0, ",", y0 ];
d3_svg_lineBasisBezier(path, px, py);
while (++i < n) {
pi = points[i];
px.shift();
px.push(pi[0]);
py.shift();
py.push(pi[1]);
d3_svg_lineBasisBezier(path, px, py);
}
i = -1;
while (++i < 2) {
px.shift();
px.push(pi[0]);
py.shift();
py.push(pi[1]);
d3_svg_lineBasisBezier(path, px, py);
}
return path.join("");
}
function d3_svg_lineBasisOpen(points) {
if (points.length < 4) return d3_svg_lineLinear(points);
var path = [], i = -1, n = points.length, pi, px = [ 0 ], py = [ 0 ];
while (++i < 3) {
pi = points[i];
px.push(pi[0]);
py.push(pi[1]);
}
path.push(d3_svg_lineDot4(d3_svg_lineBasisBezier3, px) + "," + d3_svg_lineDot4(d3_svg_lineBasisBezier3, py));
--i;
while (++i < n) {
pi = points[i];
px.shift();
px.push(pi[0]);
py.shift();
py.push(pi[1]);
d3_svg_lineBasisBezier(path, px, py);
}
return path.join("");
}
function d3_svg_lineBasisClosed(points) {
var path, i = -1, n = points.length, m = n + 4, pi, px = [], py = [];
while (++i < 4) {
pi = points[i % n];
px.push(pi[0]);
py.push(pi[1]);
}
path = [ d3_svg_lineDot4(d3_svg_lineBasisBezier3, px), ",", d3_svg_lineDot4(d3_svg_lineBasisBezier3, py) ];
--i;
while (++i < m) {
pi = points[i % n];
px.shift();
px.push(pi[0]);
py.shift();
py.push(pi[1]);
d3_svg_lineBasisBezier(path, px, py);
}
return path.join("");
}
function d3_svg_lineBundle(points, tension) {
var n = points.length - 1;
if (n) {
var x0 = points[0][0], y0 = points[0][1], dx = points[n][0] - x0, dy = points[n][1] - y0, i = -1, p, t;
while (++i <= n) {
p = points[i];
t = i / n;
p[0] = tension * p[0] + (1 - tension) * (x0 + t * dx);
p[1] = tension * p[1] + (1 - tension) * (y0 + t * dy);
}
}
return d3_svg_lineBasis(points);
}
function d3_svg_lineDot4(a, b) {
return a[0] * b[0] + a[1] * b[1] + a[2] * b[2] + a[3] * b[3];
}
var d3_svg_lineBasisBezier1 = [ 0, 2 / 3, 1 / 3, 0 ], d3_svg_lineBasisBezier2 = [ 0, 1 / 3, 2 / 3, 0 ], d3_svg_lineBasisBezier3 = [ 0, 1 / 6, 2 / 3, 1 / 6 ];
function d3_svg_lineBasisBezier(path, x, y) {
path.push("C", d3_svg_lineDot4(d3_svg_lineBasisBezier1, x), ",", d3_svg_lineDot4(d3_svg_lineBasisBezier1, y), ",", d3_svg_lineDot4(d3_svg_lineBasisBezier2, x), ",", d3_svg_lineDot4(d3_svg_lineBasisBezier2, y), ",", d3_svg_lineDot4(d3_svg_lineBasisBezier3, x), ",", d3_svg_lineDot4(d3_svg_lineBasisBezier3, y));
}
function d3_svg_lineSlope(p0, p1) {
return (p1[1] - p0[1]) / (p1[0] - p0[0]);
}
function d3_svg_lineFiniteDifferences(points) {
var i = 0, j = points.length - 1, m = [], p0 = points[0], p1 = points[1], d = m[0] = d3_svg_lineSlope(p0, p1);
while (++i < j) {
m[i] = (d + (d = d3_svg_lineSlope(p0 = p1, p1 = points[i + 1]))) / 2;
}
m[i] = d;
return m;
}
function d3_svg_lineMonotoneTangents(points) {
var tangents = [], d, a, b, s, m = d3_svg_lineFiniteDifferences(points), i = -1, j = points.length - 1;
while (++i < j) {
d = d3_svg_lineSlope(points[i], points[i + 1]);
if (Math.abs(d) < 1e-6) {
m[i] = m[i + 1] = 0;
} else {
a = m[i] / d;
b = m[i + 1] / d;
s = a * a + b * b;
if (s > 9) {
s = d * 3 / Math.sqrt(s);
m[i] = s * a;
m[i + 1] = s * b;
}
}
}
i = -1;
while (++i <= j) {
s = (points[Math.min(j, i + 1)][0] - points[Math.max(0, i - 1)][0]) / (6 * (1 + m[i] * m[i]));
tangents.push([ s || 0, m[i] * s || 0 ]);
}
return tangents;
}
function d3_svg_lineMonotone(points) {
return points.length < 3 ? d3_svg_lineLinear(points) : points[0] + d3_svg_lineHermite(points, d3_svg_lineMonotoneTangents(points));
}
d3.svg.line.radial = function() {
var line = d3_svg_line(d3_svg_lineRadial);
line.radius = line.x, delete line.x;
line.angle = line.y, delete line.y;
return line;
};
function d3_svg_lineRadial(points) {
var point, i = -1, n = points.length, r, a;
while (++i < n) {
point = points[i];
r = point[0];
a = point[1] + d3_svg_arcOffset;
point[0] = r * Math.cos(a);
point[1] = r * Math.sin(a);
}
return points;
}
function d3_svg_area(projection) {
var x0 = d3_svg_lineX, x1 = d3_svg_lineX, y0 = 0, y1 = d3_svg_lineY, defined = d3_true, interpolate = d3_svg_lineLinear, interpolateKey = interpolate.key, interpolateReverse = interpolate, L = "L", tension = .7;
function area(data) {
var segments = [], points0 = [], points1 = [], i = -1, n = data.length, d, fx0 = d3_functor(x0), fy0 = d3_functor(y0), fx1 = x0 === x1 ? function() {
return x;
} : d3_functor(x1), fy1 = y0 === y1 ? function() {
return y;
} : d3_functor(y1), x, y;
function segment() {
segments.push("M", interpolate(projection(points1), tension), L, interpolateReverse(projection(points0.reverse()), tension), "Z");
}
while (++i < n) {
if (defined.call(this, d = data[i], i)) {
points0.push([ x = +fx0.call(this, d, i), y = +fy0.call(this, d, i) ]);
points1.push([ +fx1.call(this, d, i), +fy1.call(this, d, i) ]);
} else if (points0.length) {
segment();
points0 = [];
points1 = [];
}
}
if (points0.length) segment();
return segments.length ? segments.join("") : null;
}
area.x = function(_) {
if (!arguments.length) return x1;
x0 = x1 = _;
return area;
};
area.x0 = function(_) {
if (!arguments.length) return x0;
x0 = _;
return area;
};
area.x1 = function(_) {
if (!arguments.length) return x1;
x1 = _;
return area;
};
area.y = function(_) {
if (!arguments.length) return y1;
y0 = y1 = _;
return area;
};
area.y0 = function(_) {
if (!arguments.length) return y0;
y0 = _;
return area;
};
area.y1 = function(_) {
if (!arguments.length) return y1;
y1 = _;
return area;
};
area.defined = function(_) {
if (!arguments.length) return defined;
defined = _;
return area;
};
area.interpolate = function(_) {
if (!arguments.length) return interpolateKey;
if (typeof _ === "function") interpolateKey = interpolate = _; else interpolateKey = (interpolate = d3_svg_lineInterpolators.get(_) || d3_svg_lineLinear).key;
interpolateReverse = interpolate.reverse || interpolate;
L = interpolate.closed ? "M" : "L";
return area;
};
area.tension = function(_) {
if (!arguments.length) return tension;
tension = _;
return area;
};
return area;
}
d3_svg_lineStepBefore.reverse = d3_svg_lineStepAfter;
d3_svg_lineStepAfter.reverse = d3_svg_lineStepBefore;
d3.svg.area = function() {
return d3_svg_area(d3_identity);
};
d3.svg.area.radial = function() {
var area = d3_svg_area(d3_svg_lineRadial);
area.radius = area.x, delete area.x;
area.innerRadius = area.x0, delete area.x0;
area.outerRadius = area.x1, delete area.x1;
area.angle = area.y, delete area.y;
area.startAngle = area.y0, delete area.y0;
area.endAngle = area.y1, delete area.y1;
return area;
};
d3.svg.chord = function() {
var source = d3_source, target = d3_target, radius = d3_svg_chordRadius, startAngle = d3_svg_arcStartAngle, endAngle = d3_svg_arcEndAngle;
function chord(d, i) {
var s = subgroup(this, source, d, i), t = subgroup(this, target, d, i);
return "M" + s.p0 + arc(s.r, s.p1, s.a1 - s.a0) + (equals(s, t) ? curve(s.r, s.p1, s.r, s.p0) : curve(s.r, s.p1, t.r, t.p0) + arc(t.r, t.p1, t.a1 - t.a0) + curve(t.r, t.p1, s.r, s.p0)) + "Z";
}
function subgroup(self, f, d, i) {
var subgroup = f.call(self, d, i), r = radius.call(self, subgroup, i), a0 = startAngle.call(self, subgroup, i) + d3_svg_arcOffset, a1 = endAngle.call(self, subgroup, i) + d3_svg_arcOffset;
return {
r: r,
a0: a0,
a1: a1,
p0: [ r * Math.cos(a0), r * Math.sin(a0) ],
p1: [ r * Math.cos(a1), r * Math.sin(a1) ]
};
}
function equals(a, b) {
return a.a0 == b.a0 && a.a1 == b.a1;
}
function arc(r, p, a) {
return "A" + r + "," + r + " 0 " + +(a > π) + ",1 " + p;
}
function curve(r0, p0, r1, p1) {
return "Q 0,0 " + p1;
}
chord.radius = function(v) {
if (!arguments.length) return radius;
radius = d3_functor(v);
return chord;
};
chord.source = function(v) {
if (!arguments.length) return source;
source = d3_functor(v);
return chord;
};
chord.target = function(v) {
if (!arguments.length) return target;
target = d3_functor(v);
return chord;
};
chord.startAngle = function(v) {
if (!arguments.length) return startAngle;
startAngle = d3_functor(v);
return chord;
};
chord.endAngle = function(v) {
if (!arguments.length) return endAngle;
endAngle = d3_functor(v);
return chord;
};
return chord;
};
function d3_svg_chordRadius(d) {
return d.radius;
}
d3.svg.diagonal = function() {
var source = d3_source, target = d3_target, projection = d3_svg_diagonalProjection;
function diagonal(d, i) {
var p0 = source.call(this, d, i), p3 = target.call(this, d, i), m = (p0.y + p3.y) / 2, p = [ p0, {
x: p0.x,
y: m
}, {
x: p3.x,
y: m
}, p3 ];
p = p.map(projection);
return "M" + p[0] + "C" + p[1] + " " + p[2] + " " + p[3];
}
diagonal.source = function(x) {
if (!arguments.length) return source;
source = d3_functor(x);
return diagonal;
};
diagonal.target = function(x) {
if (!arguments.length) return target;
target = d3_functor(x);
return diagonal;
};
diagonal.projection = function(x) {
if (!arguments.length) return projection;
projection = x;
return diagonal;
};
return diagonal;
};
function d3_svg_diagonalProjection(d) {
return [ d.x, d.y ];
}
d3.svg.diagonal.radial = function() {
var diagonal = d3.svg.diagonal(), projection = d3_svg_diagonalProjection, projection_ = diagonal.projection;
diagonal.projection = function(x) {
return arguments.length ? projection_(d3_svg_diagonalRadialProjection(projection = x)) : projection;
};
return diagonal;
};
function d3_svg_diagonalRadialProjection(projection) {
return function() {
var d = projection.apply(this, arguments), r = d[0], a = d[1] + d3_svg_arcOffset;
return [ r * Math.cos(a), r * Math.sin(a) ];
};
}
d3.svg.symbol = function() {
var type = d3_svg_symbolType, size = d3_svg_symbolSize;
function symbol(d, i) {
return (d3_svg_symbols.get(type.call(this, d, i)) || d3_svg_symbolCircle)(size.call(this, d, i));
}
symbol.type = function(x) {
if (!arguments.length) return type;
type = d3_functor(x);
return symbol;
};
symbol.size = function(x) {
if (!arguments.length) return size;
size = d3_functor(x);
return symbol;
};
return symbol;
};
function d3_svg_symbolSize() {
return 64;
}
function d3_svg_symbolType() {
return "circle";
}
function d3_svg_symbolCircle(size) {
var r = Math.sqrt(size / π);
return "M0," + r + "A" + r + "," + r + " 0 1,1 0," + -r + "A" + r + "," + r + " 0 1,1 0," + r + "Z";
}
var d3_svg_symbols = d3.map({
circle: d3_svg_symbolCircle,
cross: function(size) {
var r = Math.sqrt(size / 5) / 2;
return "M" + -3 * r + "," + -r + "H" + -r + "V" + -3 * r + "H" + r + "V" + -r + "H" + 3 * r + "V" + r + "H" + r + "V" + 3 * r + "H" + -r + "V" + r + "H" + -3 * r + "Z";
},
diamond: function(size) {
var ry = Math.sqrt(size / (2 * d3_svg_symbolTan30)), rx = ry * d3_svg_symbolTan30;
return "M0," + -ry + "L" + rx + ",0" + " 0," + ry + " " + -rx + ",0" + "Z";
},
square: function(size) {
var r = Math.sqrt(size) / 2;
return "M" + -r + "," + -r + "L" + r + "," + -r + " " + r + "," + r + " " + -r + "," + r + "Z";
},
"triangle-down": function(size) {
var rx = Math.sqrt(size / d3_svg_symbolSqrt3), ry = rx * d3_svg_symbolSqrt3 / 2;
return "M0," + ry + "L" + rx + "," + -ry + " " + -rx + "," + -ry + "Z";
},
"triangle-up": function(size) {
var rx = Math.sqrt(size / d3_svg_symbolSqrt3), ry = rx * d3_svg_symbolSqrt3 / 2;
return "M0," + -ry + "L" + rx + "," + ry + " " + -rx + "," + ry + "Z";
}
});
d3.svg.symbolTypes = d3_svg_symbols.keys();
var d3_svg_symbolSqrt3 = Math.sqrt(3), d3_svg_symbolTan30 = Math.tan(30 * d3_radians);
d3.svg.axis = function() {
var scale = d3.scale.linear(), orient = d3_svg_axisDefaultOrient, tickMajorSize = 6, tickMinorSize = 6, tickEndSize = 6, tickPadding = 3, tickArguments_ = [ 10 ], tickValues = null, tickFormat_, tickSubdivide = 0;
function axis(g) {
g.each(function() {
var g = d3.select(this);
var ticks = tickValues == null ? scale.ticks ? scale.ticks.apply(scale, tickArguments_) : scale.domain() : tickValues, tickFormat = tickFormat_ == null ? scale.tickFormat ? scale.tickFormat.apply(scale, tickArguments_) : String : tickFormat_;
var subticks = d3_svg_axisSubdivide(scale, ticks, tickSubdivide), subtick = g.selectAll(".tick.minor").data(subticks, String), subtickEnter = subtick.enter().insert("line", ".tick").attr("class", "tick minor").style("opacity", 1e-6), subtickExit = d3.transition(subtick.exit()).style("opacity", 1e-6).remove(), subtickUpdate = d3.transition(subtick).style("opacity", 1);
var tick = g.selectAll(".tick.major").data(ticks, String), tickEnter = tick.enter().insert("g", "path").attr("class", "tick major").style("opacity", 1e-6), tickExit = d3.transition(tick.exit()).style("opacity", 1e-6).remove(), tickUpdate = d3.transition(tick).style("opacity", 1), tickTransform;
var range = d3_scaleRange(scale), path = g.selectAll(".domain").data([ 0 ]), pathUpdate = (path.enter().append("path").attr("class", "domain"),
d3.transition(path));
var scale1 = scale.copy(), scale0 = this.__chart__ || scale1;
this.__chart__ = scale1;
tickEnter.append("line");
tickEnter.append("text");
var lineEnter = tickEnter.select("line"), lineUpdate = tickUpdate.select("line"), text = tick.select("text").text(tickFormat), textEnter = tickEnter.select("text"), textUpdate = tickUpdate.select("text");
switch (orient) {
case "bottom":
{
tickTransform = d3_svg_axisX;
subtickEnter.attr("y2", tickMinorSize);
subtickUpdate.attr("x2", 0).attr("y2", tickMinorSize);
lineEnter.attr("y2", tickMajorSize);
textEnter.attr("y", Math.max(tickMajorSize, 0) + tickPadding);
lineUpdate.attr("x2", 0).attr("y2", tickMajorSize);
textUpdate.attr("x", 0).attr("y", Math.max(tickMajorSize, 0) + tickPadding);
text.attr("dy", ".71em").style("text-anchor", "middle");
pathUpdate.attr("d", "M" + range[0] + "," + tickEndSize + "V0H" + range[1] + "V" + tickEndSize);
break;
}
case "top":
{
tickTransform = d3_svg_axisX;
subtickEnter.attr("y2", -tickMinorSize);
subtickUpdate.attr("x2", 0).attr("y2", -tickMinorSize);
lineEnter.attr("y2", -tickMajorSize);
textEnter.attr("y", -(Math.max(tickMajorSize, 0) + tickPadding));
lineUpdate.attr("x2", 0).attr("y2", -tickMajorSize);
textUpdate.attr("x", 0).attr("y", -(Math.max(tickMajorSize, 0) + tickPadding));
text.attr("dy", "0em").style("text-anchor", "middle");
pathUpdate.attr("d", "M" + range[0] + "," + -tickEndSize + "V0H" + range[1] + "V" + -tickEndSize);
break;
}
case "left":
{
tickTransform = d3_svg_axisY;
subtickEnter.attr("x2", -tickMinorSize);
subtickUpdate.attr("x2", -tickMinorSize).attr("y2", 0);
lineEnter.attr("x2", -tickMajorSize);
textEnter.attr("x", -(Math.max(tickMajorSize, 0) + tickPadding));
lineUpdate.attr("x2", -tickMajorSize).attr("y2", 0);
textUpdate.attr("x", -(Math.max(tickMajorSize, 0) + tickPadding)).attr("y", 0);
text.attr("dy", ".32em").style("text-anchor", "end");
pathUpdate.attr("d", "M" + -tickEndSize + "," + range[0] + "H0V" + range[1] + "H" + -tickEndSize);
break;
}
case "right":
{
tickTransform = d3_svg_axisY;
subtickEnter.attr("x2", tickMinorSize);
subtickUpdate.attr("x2", tickMinorSize).attr("y2", 0);
lineEnter.attr("x2", tickMajorSize);
textEnter.attr("x", Math.max(tickMajorSize, 0) + tickPadding);
lineUpdate.attr("x2", tickMajorSize).attr("y2", 0);
textUpdate.attr("x", Math.max(tickMajorSize, 0) + tickPadding).attr("y", 0);
text.attr("dy", ".32em").style("text-anchor", "start");
pathUpdate.attr("d", "M" + tickEndSize + "," + range[0] + "H0V" + range[1] + "H" + tickEndSize);
break;
}
}
if (scale.ticks) {
tickEnter.call(tickTransform, scale0);
tickUpdate.call(tickTransform, scale1);
tickExit.call(tickTransform, scale1);
subtickEnter.call(tickTransform, scale0);
subtickUpdate.call(tickTransform, scale1);
subtickExit.call(tickTransform, scale1);
} else {
var dx = scale1.rangeBand() / 2, x = function(d) {
return scale1(d) + dx;
};
tickEnter.call(tickTransform, x);
tickUpdate.call(tickTransform, x);
}
});
}
axis.scale = function(x) {
if (!arguments.length) return scale;
scale = x;
return axis;
};
axis.orient = function(x) {
if (!arguments.length) return orient;
orient = x in d3_svg_axisOrients ? x + "" : d3_svg_axisDefaultOrient;
return axis;
};
axis.ticks = function() {
if (!arguments.length) return tickArguments_;
tickArguments_ = arguments;
return axis;
};
axis.tickValues = function(x) {
if (!arguments.length) return tickValues;
tickValues = x;
return axis;
};
axis.tickFormat = function(x) {
if (!arguments.length) return tickFormat_;
tickFormat_ = x;
return axis;
};
axis.tickSize = function(x, y) {
if (!arguments.length) return tickMajorSize;
var n = arguments.length - 1;
tickMajorSize = +x;
tickMinorSize = n > 1 ? +y : tickMajorSize;
tickEndSize = n > 0 ? +arguments[n] : tickMajorSize;
return axis;
};
axis.tickPadding = function(x) {
if (!arguments.length) return tickPadding;
tickPadding = +x;
return axis;
};
axis.tickSubdivide = function(x) {
if (!arguments.length) return tickSubdivide;
tickSubdivide = +x;
return axis;
};
return axis;
};
var d3_svg_axisDefaultOrient = "bottom", d3_svg_axisOrients = {
top: 1,
right: 1,
bottom: 1,
left: 1
};
function d3_svg_axisX(selection, x) {
selection.attr("transform", function(d) {
return "translate(" + x(d) + ",0)";
});
}
function d3_svg_axisY(selection, y) {
selection.attr("transform", function(d) {
return "translate(0," + y(d) + ")";
});
}
function d3_svg_axisSubdivide(scale, ticks, m) {
subticks = [];
if (m && ticks.length > 1) {
var extent = d3_scaleExtent(scale.domain()), subticks, i = -1, n = ticks.length, d = (ticks[1] - ticks[0]) / ++m, j, v;
while (++i < n) {
for (j = m; --j > 0; ) {
if ((v = +ticks[i] - j * d) >= extent[0]) {
subticks.push(v);
}
}
}
for (--i, j = 0; ++j < m && (v = +ticks[i] + j * d) < extent[1]; ) {
subticks.push(v);
}
}
return subticks;
}
d3.svg.brush = function() {
var event = d3_eventDispatch(brush, "brushstart", "brush", "brushend"), x = null, y = null, resizes = d3_svg_brushResizes[0], extent = [ [ 0, 0 ], [ 0, 0 ] ], extentDomain;
function brush(g) {
g.each(function() {
var g = d3.select(this), bg = g.selectAll(".background").data([ 0 ]), fg = g.selectAll(".extent").data([ 0 ]), tz = g.selectAll(".resize").data(resizes, String), e;
g.style("pointer-events", "all").on("mousedown.brush", brushstart).on("touchstart.brush", brushstart);
bg.enter().append("rect").attr("class", "background").style("visibility", "hidden").style("cursor", "crosshair");
fg.enter().append("rect").attr("class", "extent").style("cursor", "move");
tz.enter().append("g").attr("class", function(d) {
return "resize " + d;
}).style("cursor", function(d) {
return d3_svg_brushCursor[d];
}).append("rect").attr("x", function(d) {
return /[ew]$/.test(d) ? -3 : null;
}).attr("y", function(d) {
return /^[ns]/.test(d) ? -3 : null;
}).attr("width", 6).attr("height", 6).style("visibility", "hidden");
tz.style("display", brush.empty() ? "none" : null);
tz.exit().remove();
if (x) {
e = d3_scaleRange(x);
bg.attr("x", e[0]).attr("width", e[1] - e[0]);
redrawX(g);
}
if (y) {
e = d3_scaleRange(y);
bg.attr("y", e[0]).attr("height", e[1] - e[0]);
redrawY(g);
}
redraw(g);
});
}
function redraw(g) {
g.selectAll(".resize").attr("transform", function(d) {
return "translate(" + extent[+/e$/.test(d)][0] + "," + extent[+/^s/.test(d)][1] + ")";
});
}
function redrawX(g) {
g.select(".extent").attr("x", extent[0][0]);
g.selectAll(".extent,.n>rect,.s>rect").attr("width", extent[1][0] - extent[0][0]);
}
function redrawY(g) {
g.select(".extent").attr("y", extent[0][1]);
g.selectAll(".extent,.e>rect,.w>rect").attr("height", extent[1][1] - extent[0][1]);
}
function brushstart() {
var target = this, eventTarget = d3.select(d3.event.target), event_ = event.of(target, arguments), g = d3.select(target), resizing = eventTarget.datum(), resizingX = !/^(n|s)$/.test(resizing) && x, resizingY = !/^(e|w)$/.test(resizing) && y, dragging = eventTarget.classed("extent"), center, origin = mouse(), offset;
var w = d3.select(d3_window).on("mousemove.brush", brushmove).on("mouseup.brush", brushend).on("touchmove.brush", brushmove).on("touchend.brush", brushend).on("keydown.brush", keydown).on("keyup.brush", keyup);
if (dragging) {
origin[0] = extent[0][0] - origin[0];
origin[1] = extent[0][1] - origin[1];
} else if (resizing) {
var ex = +/w$/.test(resizing), ey = +/^n/.test(resizing);
offset = [ extent[1 - ex][0] - origin[0], extent[1 - ey][1] - origin[1] ];
origin[0] = extent[ex][0];
origin[1] = extent[ey][1];
} else if (d3.event.altKey) center = origin.slice();
g.style("pointer-events", "none").selectAll(".resize").style("display", null);
d3.select("body").style("cursor", eventTarget.style("cursor"));
event_({
type: "brushstart"
});
brushmove();
d3_eventCancel();
function mouse() {
var touches = d3.event.changedTouches;
return touches ? d3.touches(target, touches)[0] : d3.mouse(target);
}
function keydown() {
if (d3.event.keyCode == 32) {
if (!dragging) {
center = null;
origin[0] -= extent[1][0];
origin[1] -= extent[1][1];
dragging = 2;
}
d3_eventCancel();
}
}
function keyup() {
if (d3.event.keyCode == 32 && dragging == 2) {
origin[0] += extent[1][0];
origin[1] += extent[1][1];
dragging = 0;
d3_eventCancel();
}
}
function brushmove() {
var point = mouse(), moved = false;
if (offset) {
point[0] += offset[0];
point[1] += offset[1];
}
if (!dragging) {
if (d3.event.altKey) {
if (!center) center = [ (extent[0][0] + extent[1][0]) / 2, (extent[0][1] + extent[1][1]) / 2 ];
origin[0] = extent[+(point[0] < center[0])][0];
origin[1] = extent[+(point[1] < center[1])][1];
} else center = null;
}
if (resizingX && move1(point, x, 0)) {
redrawX(g);
moved = true;
}
if (resizingY && move1(point, y, 1)) {
redrawY(g);
moved = true;
}
if (moved) {
redraw(g);
event_({
type: "brush",
mode: dragging ? "move" : "resize"
});
}
}
function move1(point, scale, i) {
var range = d3_scaleRange(scale), r0 = range[0], r1 = range[1], position = origin[i], size = extent[1][i] - extent[0][i], min, max;
if (dragging) {
r0 -= position;
r1 -= size + position;
}
min = Math.max(r0, Math.min(r1, point[i]));
if (dragging) {
max = (min += position) + size;
} else {
if (center) position = Math.max(r0, Math.min(r1, 2 * center[i] - min));
if (position < min) {
max = min;
min = position;
} else {
max = position;
}
}
if (extent[0][i] !== min || extent[1][i] !== max) {
extentDomain = null;
extent[0][i] = min;
extent[1][i] = max;
return true;
}
}
function brushend() {
brushmove();
g.style("pointer-events", "all").selectAll(".resize").style("display", brush.empty() ? "none" : null);
d3.select("body").style("cursor", null);
w.on("mousemove.brush", null).on("mouseup.brush", null).on("touchmove.brush", null).on("touchend.brush", null).on("keydown.brush", null).on("keyup.brush", null);
event_({
type: "brushend"
});
d3_eventCancel();
}
}
brush.x = function(z) {
if (!arguments.length) return x;
x = z;
resizes = d3_svg_brushResizes[!x << 1 | !y];
return brush;
};
brush.y = function(z) {
if (!arguments.length) return y;
y = z;
resizes = d3_svg_brushResizes[!x << 1 | !y];
return brush;
};
brush.extent = function(z) {
var x0, x1, y0, y1, t;
if (!arguments.length) {
z = extentDomain || extent;
if (x) {
x0 = z[0][0], x1 = z[1][0];
if (!extentDomain) {
x0 = extent[0][0], x1 = extent[1][0];
if (x.invert) x0 = x.invert(x0), x1 = x.invert(x1);
if (x1 < x0) t = x0, x0 = x1, x1 = t;
}
}
if (y) {
y0 = z[0][1], y1 = z[1][1];
if (!extentDomain) {
y0 = extent[0][1], y1 = extent[1][1];
if (y.invert) y0 = y.invert(y0), y1 = y.invert(y1);
if (y1 < y0) t = y0, y0 = y1, y1 = t;
}
}
return x && y ? [ [ x0, y0 ], [ x1, y1 ] ] : x ? [ x0, x1 ] : y && [ y0, y1 ];
}
extentDomain = [ [ 0, 0 ], [ 0, 0 ] ];
if (x) {
x0 = z[0], x1 = z[1];
if (y) x0 = x0[0], x1 = x1[0];
extentDomain[0][0] = x0, extentDomain[1][0] = x1;
if (x.invert) x0 = x(x0), x1 = x(x1);
if (x1 < x0) t = x0, x0 = x1, x1 = t;
extent[0][0] = x0 | 0, extent[1][0] = x1 | 0;
}
if (y) {
y0 = z[0], y1 = z[1];
if (x) y0 = y0[1], y1 = y1[1];
extentDomain[0][1] = y0, extentDomain[1][1] = y1;
if (y.invert) y0 = y(y0), y1 = y(y1);
if (y1 < y0) t = y0, y0 = y1, y1 = t;
extent[0][1] = y0 | 0, extent[1][1] = y1 | 0;
}
return brush;
};
brush.clear = function() {
extentDomain = null;
extent[0][0] = extent[0][1] = extent[1][0] = extent[1][1] = 0;
return brush;
};
brush.empty = function() {
return x && extent[0][0] === extent[1][0] || y && extent[0][1] === extent[1][1];
};
return d3.rebind(brush, event, "on");
};
var d3_svg_brushCursor = {
n: "ns-resize",
e: "ew-resize",
s: "ns-resize",
w: "ew-resize",
nw: "nwse-resize",
ne: "nesw-resize",
se: "nwse-resize",
sw: "nesw-resize"
};
var d3_svg_brushResizes = [ [ "n", "e", "s", "w", "nw", "ne", "se", "sw" ], [ "e", "w" ], [ "n", "s" ], [] ];
d3.behavior = {};
d3.behavior.drag = function() {
var event = d3_eventDispatch(drag, "drag", "dragstart", "dragend"), origin = null;
function drag() {
this.on("mousedown.drag", mousedown).on("touchstart.drag", mousedown);
}
function mousedown() {
var target = this, event_ = event.of(target, arguments), eventTarget = d3.event.target, touchId = d3.event.touches ? d3.event.changedTouches[0].identifier : null, offset, origin_ = point(), moved = 0;
var w = d3.select(d3_window).on(touchId != null ? "touchmove.drag-" + touchId : "mousemove.drag", dragmove).on(touchId != null ? "touchend.drag-" + touchId : "mouseup.drag", dragend, true);
if (origin) {
offset = origin.apply(target, arguments);
offset = [ offset.x - origin_[0], offset.y - origin_[1] ];
} else {
offset = [ 0, 0 ];
}
if (touchId == null) d3_eventCancel();
event_({
type: "dragstart"
});
function point() {
var p = target.parentNode;
return touchId != null ? d3.touches(p).filter(function(p) {
return p.identifier === touchId;
})[0] : d3.mouse(p);
}
function dragmove() {
if (!target.parentNode) return dragend();
var p = point(), dx = p[0] - origin_[0], dy = p[1] - origin_[1];
moved |= dx | dy;
origin_ = p;
d3_eventCancel();
event_({
type: "drag",
x: p[0] + offset[0],
y: p[1] + offset[1],
dx: dx,
dy: dy
});
}
function dragend() {
event_({
type: "dragend"
});
if (moved) {
d3_eventCancel();
if (d3.event.target === eventTarget) w.on("click.drag", click, true);
}
w.on(touchId != null ? "touchmove.drag-" + touchId : "mousemove.drag", null).on(touchId != null ? "touchend.drag-" + touchId : "mouseup.drag", null);
}
function click() {
d3_eventCancel();
w.on("click.drag", null);
}
}
drag.origin = function(x) {
if (!arguments.length) return origin;
origin = x;
return drag;
};
return d3.rebind(drag, event, "on");
};
d3.behavior.zoom = function() {
var translate = [ 0, 0 ], translate0, scale = 1, scale0, scaleExtent = d3_behavior_zoomInfinity, event = d3_eventDispatch(zoom, "zoom"), x0, x1, y0, y1, touchtime;
function zoom() {
this.on("mousedown.zoom", mousedown).on("mousemove.zoom", mousemove).on(d3_behavior_zoomWheel + ".zoom", mousewheel).on("dblclick.zoom", dblclick).on("touchstart.zoom", touchstart).on("touchmove.zoom", touchmove).on("touchend.zoom", touchstart);
}
zoom.translate = function(x) {
if (!arguments.length) return translate;
translate = x.map(Number);
rescale();
return zoom;
};
zoom.scale = function(x) {
if (!arguments.length) return scale;
scale = +x;
rescale();
return zoom;
};
zoom.scaleExtent = function(x) {
if (!arguments.length) return scaleExtent;
scaleExtent = x == null ? d3_behavior_zoomInfinity : x.map(Number);
return zoom;
};
zoom.x = function(z) {
if (!arguments.length) return x1;
x1 = z;
x0 = z.copy();
translate = [ 0, 0 ];
scale = 1;
return zoom;
};
zoom.y = function(z) {
if (!arguments.length) return y1;
y1 = z;
y0 = z.copy();
translate = [ 0, 0 ];
scale = 1;
return zoom;
};
function location(p) {
return [ (p[0] - translate[0]) / scale, (p[1] - translate[1]) / scale ];
}
function point(l) {
return [ l[0] * scale + translate[0], l[1] * scale + translate[1] ];
}
function scaleTo(s) {
scale = Math.max(scaleExtent[0], Math.min(scaleExtent[1], s));
}
function translateTo(p, l) {
l = point(l);
translate[0] += p[0] - l[0];
translate[1] += p[1] - l[1];
}
function rescale() {
if (x1) x1.domain(x0.range().map(function(x) {
return (x - translate[0]) / scale;
}).map(x0.invert));
if (y1) y1.domain(y0.range().map(function(y) {
return (y - translate[1]) / scale;
}).map(y0.invert));
}
function dispatch(event) {
rescale();
d3.event.preventDefault();
event({
type: "zoom",
scale: scale,
translate: translate
});
}
function mousedown() {
var target = this, event_ = event.of(target, arguments), eventTarget = d3.event.target, moved = 0, w = d3.select(d3_window).on("mousemove.zoom", mousemove).on("mouseup.zoom", mouseup), l = location(d3.mouse(target));
d3_window.focus();
d3_eventCancel();
function mousemove() {
moved = 1;
translateTo(d3.mouse(target), l);
dispatch(event_);
}
function mouseup() {
if (moved) d3_eventCancel();
w.on("mousemove.zoom", null).on("mouseup.zoom", null);
if (moved && d3.event.target === eventTarget) w.on("click.zoom", click, true);
}
function click() {
d3_eventCancel();
w.on("click.zoom", null);
}
}
function mousewheel() {
if (!translate0) translate0 = location(d3.mouse(this));
scaleTo(Math.pow(2, d3_behavior_zoomDelta() * .002) * scale);
translateTo(d3.mouse(this), translate0);
dispatch(event.of(this, arguments));
}
function mousemove() {
translate0 = null;
}
function dblclick() {
var p = d3.mouse(this), l = location(p), k = Math.log(scale) / Math.LN2;
scaleTo(Math.pow(2, d3.event.shiftKey ? Math.ceil(k) - 1 : Math.floor(k) + 1));
translateTo(p, l);
dispatch(event.of(this, arguments));
}
function touchstart() {
var touches = d3.touches(this), now = Date.now();
scale0 = scale;
translate0 = {};
touches.forEach(function(t) {
translate0[t.identifier] = location(t);
});
d3_eventCancel();
if (touches.length === 1) {
if (now - touchtime < 500) {
var p = touches[0], l = location(touches[0]);
scaleTo(scale * 2);
translateTo(p, l);
dispatch(event.of(this, arguments));
}
touchtime = now;
}
}
function touchmove() {
var touches = d3.touches(this), p0 = touches[0], l0 = translate0[p0.identifier];
if (p1 = touches[1]) {
var p1, l1 = translate0[p1.identifier];
p0 = [ (p0[0] + p1[0]) / 2, (p0[1] + p1[1]) / 2 ];
l0 = [ (l0[0] + l1[0]) / 2, (l0[1] + l1[1]) / 2 ];
scaleTo(d3.event.scale * scale0);
}
translateTo(p0, l0);
touchtime = null;
dispatch(event.of(this, arguments));
}
return d3.rebind(zoom, event, "on");
};
var d3_behavior_zoomInfinity = [ 0, Infinity ];
var d3_behavior_zoomDelta, d3_behavior_zoomWheel = "onwheel" in document ? (d3_behavior_zoomDelta = function() {
return -d3.event.deltaY * (d3.event.deltaMode ? 120 : 1);
}, "wheel") : "onmousewheel" in document ? (d3_behavior_zoomDelta = function() {
return d3.event.wheelDelta;
}, "mousewheel") : (d3_behavior_zoomDelta = function() {
return -d3.event.detail;
}, "MozMousePixelScroll");
d3.layout = {};
d3.layout.bundle = function() {
return function(links) {
var paths = [], i = -1, n = links.length;
while (++i < n) paths.push(d3_layout_bundlePath(links[i]));
return paths;
};
};
function d3_layout_bundlePath(link) {
var start = link.source, end = link.target, lca = d3_layout_bundleLeastCommonAncestor(start, end), points = [ start ];
while (start !== lca) {
start = start.parent;
points.push(start);
}
var k = points.length;
while (end !== lca) {
points.splice(k, 0, end);
end = end.parent;
}
return points;
}
function d3_layout_bundleAncestors(node) {
var ancestors = [], parent = node.parent;
while (parent != null) {
ancestors.push(node);
node = parent;
parent = parent.parent;
}
ancestors.push(node);
return ancestors;
}
function d3_layout_bundleLeastCommonAncestor(a, b) {
if (a === b) return a;
var aNodes = d3_layout_bundleAncestors(a), bNodes = d3_layout_bundleAncestors(b), aNode = aNodes.pop(), bNode = bNodes.pop(), sharedNode = null;
while (aNode === bNode) {
sharedNode = aNode;
aNode = aNodes.pop();
bNode = bNodes.pop();
}
return sharedNode;
}
d3.layout.chord = function() {
var chord = {}, chords, groups, matrix, n, padding = 0, sortGroups, sortSubgroups, sortChords;
function relayout() {
var subgroups = {}, groupSums = [], groupIndex = d3.range(n), subgroupIndex = [], k, x, x0, i, j;
chords = [];
groups = [];
k = 0, i = -1;
while (++i < n) {
x = 0, j = -1;
while (++j < n) {
x += matrix[i][j];
}
groupSums.push(x);
subgroupIndex.push(d3.range(n));
k += x;
}
if (sortGroups) {
groupIndex.sort(function(a, b) {
return sortGroups(groupSums[a], groupSums[b]);
});
}
if (sortSubgroups) {
subgroupIndex.forEach(function(d, i) {
d.sort(function(a, b) {
return sortSubgroups(matrix[i][a], matrix[i][b]);
});
});
}
k = (2 * π - padding * n) / k;
x = 0, i = -1;
while (++i < n) {
x0 = x, j = -1;
while (++j < n) {
var di = groupIndex[i], dj = subgroupIndex[di][j], v = matrix[di][dj], a0 = x, a1 = x += v * k;
subgroups[di + "-" + dj] = {
index: di,
subindex: dj,
startAngle: a0,
endAngle: a1,
value: v
};
}
groups[di] = {
index: di,
startAngle: x0,
endAngle: x,
value: (x - x0) / k
};
x += padding;
}
i = -1;
while (++i < n) {
j = i - 1;
while (++j < n) {
var source = subgroups[i + "-" + j], target = subgroups[j + "-" + i];
if (source.value || target.value) {
chords.push(source.value < target.value ? {
source: target,
target: source
} : {
source: source,
target: target
});
}
}
}
if (sortChords) resort();
}
function resort() {
chords.sort(function(a, b) {
return sortChords((a.source.value + a.target.value) / 2, (b.source.value + b.target.value) / 2);
});
}
chord.matrix = function(x) {
if (!arguments.length) return matrix;
n = (matrix = x) && matrix.length;
chords = groups = null;
return chord;
};
chord.padding = function(x) {
if (!arguments.length) return padding;
padding = x;
chords = groups = null;
return chord;
};
chord.sortGroups = function(x) {
if (!arguments.length) return sortGroups;
sortGroups = x;
chords = groups = null;
return chord;
};
chord.sortSubgroups = function(x) {
if (!arguments.length) return sortSubgroups;
sortSubgroups = x;
chords = null;
return chord;
};
chord.sortChords = function(x) {
if (!arguments.length) return sortChords;
sortChords = x;
if (chords) resort();
return chord;
};
chord.chords = function() {
if (!chords) relayout();
return chords;
};
chord.groups = function() {
if (!groups) relayout();
return groups;
};
return chord;
};
d3.layout.force = function() {
var force = {}, event = d3.dispatch("start", "tick", "end"), size = [ 1, 1 ], drag, alpha, friction = .9, linkDistance = d3_layout_forceLinkDistance, linkStrength = d3_layout_forceLinkStrength, charge = -30, gravity = .1, theta = .8, nodes = [], links = [], distances, strengths, charges;
function repulse(node) {
return function(quad, x1, _, x2) {
if (quad.point !== node) {
var dx = quad.cx - node.x, dy = quad.cy - node.y, dn = 1 / Math.sqrt(dx * dx + dy * dy);
if ((x2 - x1) * dn < theta) {
var k = quad.charge * dn * dn;
node.px -= dx * k;
node.py -= dy * k;
return true;
}
if (quad.point && isFinite(dn)) {
var k = quad.pointCharge * dn * dn;
node.px -= dx * k;
node.py -= dy * k;
}
}
return !quad.charge;
};
}
force.tick = function() {
if ((alpha *= .99) < .005) {
event.end({
type: "end",
alpha: alpha = 0
});
return true;
}
var n = nodes.length, m = links.length, q, i, o, s, t, l, k, x, y;
for (i = 0; i < m; ++i) {
o = links[i];
s = o.source;
t = o.target;
x = t.x - s.x;
y = t.y - s.y;
if (l = x * x + y * y) {
l = alpha * strengths[i] * ((l = Math.sqrt(l)) - distances[i]) / l;
x *= l;
y *= l;
t.x -= x * (k = s.weight / (t.weight + s.weight));
t.y -= y * k;
s.x += x * (k = 1 - k);
s.y += y * k;
}
}
if (k = alpha * gravity) {
x = size[0] / 2;
y = size[1] / 2;
i = -1;
if (k) while (++i < n) {
o = nodes[i];
o.x += (x - o.x) * k;
o.y += (y - o.y) * k;
}
}
if (charge) {
d3_layout_forceAccumulate(q = d3.geom.quadtree(nodes), alpha, charges);
i = -1;
while (++i < n) {
if (!(o = nodes[i]).fixed) {
q.visit(repulse(o));
}
}
}
i = -1;
while (++i < n) {
o = nodes[i];
if (o.fixed) {
o.x = o.px;
o.y = o.py;
} else {
o.x -= (o.px - (o.px = o.x)) * friction;
o.y -= (o.py - (o.py = o.y)) * friction;
}
}
event.tick({
type: "tick",
alpha: alpha
});
};
force.nodes = function(x) {
if (!arguments.length) return nodes;
nodes = x;
return force;
};
force.links = function(x) {
if (!arguments.length) return links;
links = x;
return force;
};
force.size = function(x) {
if (!arguments.length) return size;
size = x;
return force;
};
force.linkDistance = function(x) {
if (!arguments.length) return linkDistance;
linkDistance = typeof x === "function" ? x : +x;
return force;
};
force.distance = force.linkDistance;
force.linkStrength = function(x) {
if (!arguments.length) return linkStrength;
linkStrength = typeof x === "function" ? x : +x;
return force;
};
force.friction = function(x) {
if (!arguments.length) return friction;
friction = +x;
return force;
};
force.charge = function(x) {
if (!arguments.length) return charge;
charge = typeof x === "function" ? x : +x;
return force;
};
force.gravity = function(x) {
if (!arguments.length) return gravity;
gravity = +x;
return force;
};
force.theta = function(x) {
if (!arguments.length) return theta;
theta = +x;
return force;
};
force.alpha = function(x) {
if (!arguments.length) return alpha;
x = +x;
if (alpha) {
if (x > 0) alpha = x; else alpha = 0;
} else if (x > 0) {
event.start({
type: "start",
alpha: alpha = x
});
d3.timer(force.tick);
}
return force;
};
force.start = function() {
var i, j, n = nodes.length, m = links.length, w = size[0], h = size[1], neighbors, o;
for (i = 0; i < n; ++i) {
(o = nodes[i]).index = i;
o.weight = 0;
}
for (i = 0; i < m; ++i) {
o = links[i];
if (typeof o.source == "number") o.source = nodes[o.source];
if (typeof o.target == "number") o.target = nodes[o.target];
++o.source.weight;
++o.target.weight;
}
for (i = 0; i < n; ++i) {
o = nodes[i];
if (isNaN(o.x)) o.x = position("x", w);
if (isNaN(o.y)) o.y = position("y", h);
if (isNaN(o.px)) o.px = o.x;
if (isNaN(o.py)) o.py = o.y;
}
distances = [];
if (typeof linkDistance === "function") for (i = 0; i < m; ++i) distances[i] = +linkDistance.call(this, links[i], i); else for (i = 0; i < m; ++i) distances[i] = linkDistance;
strengths = [];
if (typeof linkStrength === "function") for (i = 0; i < m; ++i) strengths[i] = +linkStrength.call(this, links[i], i); else for (i = 0; i < m; ++i) strengths[i] = linkStrength;
charges = [];
if (typeof charge === "function") for (i = 0; i < n; ++i) charges[i] = +charge.call(this, nodes[i], i); else for (i = 0; i < n; ++i) charges[i] = charge;
function position(dimension, size) {
var neighbors = neighbor(i), j = -1, m = neighbors.length, x;
while (++j < m) if (!isNaN(x = neighbors[j][dimension])) return x;
return Math.random() * size;
}
function neighbor() {
if (!neighbors) {
neighbors = [];
for (j = 0; j < n; ++j) {
neighbors[j] = [];
}
for (j = 0; j < m; ++j) {
var o = links[j];
neighbors[o.source.index].push(o.target);
neighbors[o.target.index].push(o.source);
}
}
return neighbors[i];
}
return force.resume();
};
force.resume = function() {
return force.alpha(.1);
};
force.stop = function() {
return force.alpha(0);
};
force.drag = function() {
if (!drag) drag = d3.behavior.drag().origin(d3_identity).on("dragstart.force", d3_layout_forceDragstart).on("drag.force", dragmove).on("dragend.force", d3_layout_forceDragend);
if (!arguments.length) return drag;
this.on("mouseover.force", d3_layout_forceMouseover).on("mouseout.force", d3_layout_forceMouseout).call(drag);
};
function dragmove(d) {
d.px = d3.event.x, d.py = d3.event.y;
force.resume();
}
return d3.rebind(force, event, "on");
};
function d3_layout_forceDragstart(d) {
d.fixed |= 2;
}
function d3_layout_forceDragend(d) {
d.fixed &= ~6;
}
function d3_layout_forceMouseover(d) {
d.fixed |= 4;
d.px = d.x, d.py = d.y;
}
function d3_layout_forceMouseout(d) {
d.fixed &= ~4;
}
function d3_layout_forceAccumulate(quad, alpha, charges) {
var cx = 0, cy = 0;
quad.charge = 0;
if (!quad.leaf) {
var nodes = quad.nodes, n = nodes.length, i = -1, c;
while (++i < n) {
c = nodes[i];
if (c == null) continue;
d3_layout_forceAccumulate(c, alpha, charges);
quad.charge += c.charge;
cx += c.charge * c.cx;
cy += c.charge * c.cy;
}
}
if (quad.point) {
if (!quad.leaf) {
quad.point.x += Math.random() - .5;
quad.point.y += Math.random() - .5;
}
var k = alpha * charges[quad.point.index];
quad.charge += quad.pointCharge = k;
cx += k * quad.point.x;
cy += k * quad.point.y;
}
quad.cx = cx / quad.charge;
quad.cy = cy / quad.charge;
}
var d3_layout_forceLinkDistance = 20, d3_layout_forceLinkStrength = 1;
d3.layout.partition = function() {
var hierarchy = d3.layout.hierarchy(), size = [ 1, 1 ];
function position(node, x, dx, dy) {
var children = node.children;
node.x = x;
node.y = node.depth * dy;
node.dx = dx;
node.dy = dy;
if (children && (n = children.length)) {
var i = -1, n, c, d;
dx = node.value ? dx / node.value : 0;
while (++i < n) {
position(c = children[i], x, d = c.value * dx, dy);
x += d;
}
}
}
function depth(node) {
var children = node.children, d = 0;
if (children && (n = children.length)) {
var i = -1, n;
while (++i < n) d = Math.max(d, depth(children[i]));
}
return 1 + d;
}
function partition(d, i) {
var nodes = hierarchy.call(this, d, i);
position(nodes[0], 0, size[0], size[1] / depth(nodes[0]));
return nodes;
}
partition.size = function(x) {
if (!arguments.length) return size;
size = x;
return partition;
};
return d3_layout_hierarchyRebind(partition, hierarchy);
};
d3.layout.pie = function() {
var value = Number, sort = d3_layout_pieSortByValue, startAngle = 0, endAngle = 2 * π;
function pie(data) {
var values = data.map(function(d, i) {
return +value.call(pie, d, i);
});
var a = +(typeof startAngle === "function" ? startAngle.apply(this, arguments) : startAngle);
var k = ((typeof endAngle === "function" ? endAngle.apply(this, arguments) : endAngle) - startAngle) / d3.sum(values);
var index = d3.range(data.length);
if (sort != null) index.sort(sort === d3_layout_pieSortByValue ? function(i, j) {
return values[j] - values[i];
} : function(i, j) {
return sort(data[i], data[j]);
});
var arcs = [];
index.forEach(function(i) {
var d;
arcs[i] = {
data: data[i],
value: d = values[i],
startAngle: a,
endAngle: a += d * k
};
});
return arcs;
}
pie.value = function(x) {
if (!arguments.length) return value;
value = x;
return pie;
};
pie.sort = function(x) {
if (!arguments.length) return sort;
sort = x;
return pie;
};
pie.startAngle = function(x) {
if (!arguments.length) return startAngle;
startAngle = x;
return pie;
};
pie.endAngle = function(x) {
if (!arguments.length) return endAngle;
endAngle = x;
return pie;
};
return pie;
};
var d3_layout_pieSortByValue = {};
d3.layout.stack = function() {
var values = d3_identity, order = d3_layout_stackOrderDefault, offset = d3_layout_stackOffsetZero, out = d3_layout_stackOut, x = d3_layout_stackX, y = d3_layout_stackY;
function stack(data, index) {
var series = data.map(function(d, i) {
return values.call(stack, d, i);
});
var points = series.map(function(d) {
return d.map(function(v, i) {
return [ x.call(stack, v, i), y.call(stack, v, i) ];
});
});
var orders = order.call(stack, points, index);
series = d3.permute(series, orders);
points = d3.permute(points, orders);
var offsets = offset.call(stack, points, index);
var n = series.length, m = series[0].length, i, j, o;
for (j = 0; j < m; ++j) {
out.call(stack, series[0][j], o = offsets[j], points[0][j][1]);
for (i = 1; i < n; ++i) {
out.call(stack, series[i][j], o += points[i - 1][j][1], points[i][j][1]);
}
}
return data;
}
stack.values = function(x) {
if (!arguments.length) return values;
values = x;
return stack;
};
stack.order = function(x) {
if (!arguments.length) return order;
order = typeof x === "function" ? x : d3_layout_stackOrders.get(x) || d3_layout_stackOrderDefault;
return stack;
};
stack.offset = function(x) {
if (!arguments.length) return offset;
offset = typeof x === "function" ? x : d3_layout_stackOffsets.get(x) || d3_layout_stackOffsetZero;
return stack;
};
stack.x = function(z) {
if (!arguments.length) return x;
x = z;
return stack;
};
stack.y = function(z) {
if (!arguments.length) return y;
y = z;
return stack;
};
stack.out = function(z) {
if (!arguments.length) return out;
out = z;
return stack;
};
return stack;
};
function d3_layout_stackX(d) {
return d.x;
}
function d3_layout_stackY(d) {
return d.y;
}
function d3_layout_stackOut(d, y0, y) {
d.y0 = y0;
d.y = y;
}
var d3_layout_stackOrders = d3.map({
"inside-out": function(data) {
var n = data.length, i, j, max = data.map(d3_layout_stackMaxIndex), sums = data.map(d3_layout_stackReduceSum), index = d3.range(n).sort(function(a, b) {
return max[a] - max[b];
}), top = 0, bottom = 0, tops = [], bottoms = [];
for (i = 0; i < n; ++i) {
j = index[i];
if (top < bottom) {
top += sums[j];
tops.push(j);
} else {
bottom += sums[j];
bottoms.push(j);
}
}
return bottoms.reverse().concat(tops);
},
reverse: function(data) {
return d3.range(data.length).reverse();
},
"default": d3_layout_stackOrderDefault
});
var d3_layout_stackOffsets = d3.map({
silhouette: function(data) {
var n = data.length, m = data[0].length, sums = [], max = 0, i, j, o, y0 = [];
for (j = 0; j < m; ++j) {
for (i = 0, o = 0; i < n; i++) o += data[i][j][1];
if (o > max) max = o;
sums.push(o);
}
for (j = 0; j < m; ++j) {
y0[j] = (max - sums[j]) / 2;
}
return y0;
},
wiggle: function(data) {
var n = data.length, x = data[0], m = x.length, i, j, k, s1, s2, s3, dx, o, o0, y0 = [];
y0[0] = o = o0 = 0;
for (j = 1; j < m; ++j) {
for (i = 0, s1 = 0; i < n; ++i) s1 += data[i][j][1];
for (i = 0, s2 = 0, dx = x[j][0] - x[j - 1][0]; i < n; ++i) {
for (k = 0, s3 = (data[i][j][1] - data[i][j - 1][1]) / (2 * dx); k < i; ++k) {
s3 += (data[k][j][1] - data[k][j - 1][1]) / dx;
}
s2 += s3 * data[i][j][1];
}
y0[j] = o -= s1 ? s2 / s1 * dx : 0;
if (o < o0) o0 = o;
}
for (j = 0; j < m; ++j) y0[j] -= o0;
return y0;
},
expand: function(data) {
var n = data.length, m = data[0].length, k = 1 / n, i, j, o, y0 = [];
for (j = 0; j < m; ++j) {
for (i = 0, o = 0; i < n; i++) o += data[i][j][1];
if (o) for (i = 0; i < n; i++) data[i][j][1] /= o; else for (i = 0; i < n; i++) data[i][j][1] = k;
}
for (j = 0; j < m; ++j) y0[j] = 0;
return y0;
},
zero: d3_layout_stackOffsetZero
});
function d3_layout_stackOrderDefault(data) {
return d3.range(data.length);
}
function d3_layout_stackOffsetZero(data) {
var j = -1, m = data[0].length, y0 = [];
while (++j < m) y0[j] = 0;
return y0;
}
function d3_layout_stackMaxIndex(array) {
var i = 1, j = 0, v = array[0][1], k, n = array.length;
for (;i < n; ++i) {
if ((k = array[i][1]) > v) {
j = i;
v = k;
}
}
return j;
}
function d3_layout_stackReduceSum(d) {
return d.reduce(d3_layout_stackSum, 0);
}
function d3_layout_stackSum(p, d) {
return p + d[1];
}
d3.layout.histogram = function() {
var frequency = true, valuer = Number, ranger = d3_layout_histogramRange, binner = d3_layout_histogramBinSturges;
function histogram(data, i) {
var bins = [], values = data.map(valuer, this), range = ranger.call(this, values, i), thresholds = binner.call(this, range, values, i), bin, i = -1, n = values.length, m = thresholds.length - 1, k = frequency ? 1 : 1 / n, x;
while (++i < m) {
bin = bins[i] = [];
bin.dx = thresholds[i + 1] - (bin.x = thresholds[i]);
bin.y = 0;
}
if (m > 0) {
i = -1;
while (++i < n) {
x = values[i];
if (x >= range[0] && x <= range[1]) {
bin = bins[d3.bisect(thresholds, x, 1, m) - 1];
bin.y += k;
bin.push(data[i]);
}
}
}
return bins;
}
histogram.value = function(x) {
if (!arguments.length) return valuer;
valuer = x;
return histogram;
};
histogram.range = function(x) {
if (!arguments.length) return ranger;
ranger = d3_functor(x);
return histogram;
};
histogram.bins = function(x) {
if (!arguments.length) return binner;
binner = typeof x === "number" ? function(range) {
return d3_layout_histogramBinFixed(range, x);
} : d3_functor(x);
return histogram;
};
histogram.frequency = function(x) {
if (!arguments.length) return frequency;
frequency = !!x;
return histogram;
};
return histogram;
};
function d3_layout_histogramBinSturges(range, values) {
return d3_layout_histogramBinFixed(range, Math.ceil(Math.log(values.length) / Math.LN2 + 1));
}
function d3_layout_histogramBinFixed(range, n) {
var x = -1, b = +range[0], m = (range[1] - b) / n, f = [];
while (++x <= n) f[x] = m * x + b;
return f;
}
function d3_layout_histogramRange(values) {
return [ d3.min(values), d3.max(values) ];
}
d3.layout.hierarchy = function() {
var sort = d3_layout_hierarchySort, children = d3_layout_hierarchyChildren, value = d3_layout_hierarchyValue;
function recurse(node, depth, nodes) {
var childs = children.call(hierarchy, node, depth);
node.depth = depth;
nodes.push(node);
if (childs && (n = childs.length)) {
var i = -1, n, c = node.children = [], v = 0, j = depth + 1, d;
while (++i < n) {
d = recurse(childs[i], j, nodes);
d.parent = node;
c.push(d);
v += d.value;
}
if (sort) c.sort(sort);
if (value) node.value = v;
} else if (value) {
node.value = +value.call(hierarchy, node, depth) || 0;
}
return node;
}
function revalue(node, depth) {
var children = node.children, v = 0;
if (children && (n = children.length)) {
var i = -1, n, j = depth + 1;
while (++i < n) v += revalue(children[i], j);
} else if (value) {
v = +value.call(hierarchy, node, depth) || 0;
}
if (value) node.value = v;
return v;
}
function hierarchy(d) {
var nodes = [];
recurse(d, 0, nodes);
return nodes;
}
hierarchy.sort = function(x) {
if (!arguments.length) return sort;
sort = x;
return hierarchy;
};
hierarchy.children = function(x) {
if (!arguments.length) return children;
children = x;
return hierarchy;
};
hierarchy.value = function(x) {
if (!arguments.length) return value;
value = x;
return hierarchy;
};
hierarchy.revalue = function(root) {
revalue(root, 0);
return root;
};
return hierarchy;
};
function d3_layout_hierarchyRebind(object, hierarchy) {
d3.rebind(object, hierarchy, "sort", "children", "value");
object.nodes = object;
object.links = d3_layout_hierarchyLinks;
return object;
}
function d3_layout_hierarchyChildren(d) {
return d.children;
}
function d3_layout_hierarchyValue(d) {
return d.value;
}
function d3_layout_hierarchySort(a, b) {
return b.value - a.value;
}
function d3_layout_hierarchyLinks(nodes) {
return d3.merge(nodes.map(function(parent) {
return (parent.children || []).map(function(child) {
return {
source: parent,
target: child
};
});
}));
}
d3.layout.pack = function() {
var hierarchy = d3.layout.hierarchy().sort(d3_layout_packSort), padding = 0, size = [ 1, 1 ];
function pack(d, i) {
var nodes = hierarchy.call(this, d, i), root = nodes[0];
root.x = 0;
root.y = 0;
d3_layout_treeVisitAfter(root, function(d) {
d.r = Math.sqrt(d.value);
});
d3_layout_treeVisitAfter(root, d3_layout_packSiblings);
var w = size[0], h = size[1], k = Math.max(2 * root.r / w, 2 * root.r / h);
if (padding > 0) {
var dr = padding * k / 2;
d3_layout_treeVisitAfter(root, function(d) {
d.r += dr;
});
d3_layout_treeVisitAfter(root, d3_layout_packSiblings);
d3_layout_treeVisitAfter(root, function(d) {
d.r -= dr;
});
k = Math.max(2 * root.r / w, 2 * root.r / h);
}
d3_layout_packTransform(root, w / 2, h / 2, 1 / k);
return nodes;
}
pack.size = function(x) {
if (!arguments.length) return size;
size = x;
return pack;
};
pack.padding = function(_) {
if (!arguments.length) return padding;
padding = +_;
return pack;
};
return d3_layout_hierarchyRebind(pack, hierarchy);
};
function d3_layout_packSort(a, b) {
return a.value - b.value;
}
function d3_layout_packInsert(a, b) {
var c = a._pack_next;
a._pack_next = b;
b._pack_prev = a;
b._pack_next = c;
c._pack_prev = b;
}
function d3_layout_packSplice(a, b) {
a._pack_next = b;
b._pack_prev = a;
}
function d3_layout_packIntersects(a, b) {
var dx = b.x - a.x, dy = b.y - a.y, dr = a.r + b.r;
return dr * dr - dx * dx - dy * dy > .001;
}
function d3_layout_packSiblings(node) {
if (!(nodes = node.children) || !(n = nodes.length)) return;
var nodes, xMin = Infinity, xMax = -Infinity, yMin = Infinity, yMax = -Infinity, a, b, c, i, j, k, n;
function bound(node) {
xMin = Math.min(node.x - node.r, xMin);
xMax = Math.max(node.x + node.r, xMax);
yMin = Math.min(node.y - node.r, yMin);
yMax = Math.max(node.y + node.r, yMax);
}
nodes.forEach(d3_layout_packLink);
a = nodes[0];
a.x = -a.r;
a.y = 0;
bound(a);
if (n > 1) {
b = nodes[1];
b.x = b.r;
b.y = 0;
bound(b);
if (n > 2) {
c = nodes[2];
d3_layout_packPlace(a, b, c);
bound(c);
d3_layout_packInsert(a, c);
a._pack_prev = c;
d3_layout_packInsert(c, b);
b = a._pack_next;
for (i = 3; i < n; i++) {
d3_layout_packPlace(a, b, c = nodes[i]);
var isect = 0, s1 = 1, s2 = 1;
for (j = b._pack_next; j !== b; j = j._pack_next, s1++) {
if (d3_layout_packIntersects(j, c)) {
isect = 1;
break;
}
}
if (isect == 1) {
for (k = a._pack_prev; k !== j._pack_prev; k = k._pack_prev, s2++) {
if (d3_layout_packIntersects(k, c)) {
break;
}
}
}
if (isect) {
if (s1 < s2 || s1 == s2 && b.r < a.r) d3_layout_packSplice(a, b = j); else d3_layout_packSplice(a = k, b);
i--;
} else {
d3_layout_packInsert(a, c);
b = c;
bound(c);
}
}
}
}
var cx = (xMin + xMax) / 2, cy = (yMin + yMax) / 2, cr = 0;
for (i = 0; i < n; i++) {
c = nodes[i];
c.x -= cx;
c.y -= cy;
cr = Math.max(cr, c.r + Math.sqrt(c.x * c.x + c.y * c.y));
}
node.r = cr;
nodes.forEach(d3_layout_packUnlink);
}
function d3_layout_packLink(node) {
node._pack_next = node._pack_prev = node;
}
function d3_layout_packUnlink(node) {
delete node._pack_next;
delete node._pack_prev;
}
function d3_layout_packTransform(node, x, y, k) {
var children = node.children;
node.x = x += k * node.x;
node.y = y += k * node.y;
node.r *= k;
if (children) {
var i = -1, n = children.length;
while (++i < n) d3_layout_packTransform(children[i], x, y, k);
}
}
function d3_layout_packPlace(a, b, c) {
var db = a.r + c.r, dx = b.x - a.x, dy = b.y - a.y;
if (db && (dx || dy)) {
var da = b.r + c.r, dc = dx * dx + dy * dy;
da *= da;
db *= db;
var x = .5 + (db - da) / (2 * dc), y = Math.sqrt(Math.max(0, 2 * da * (db + dc) - (db -= dc) * db - da * da)) / (2 * dc);
c.x = a.x + x * dx + y * dy;
c.y = a.y + x * dy - y * dx;
} else {
c.x = a.x + db;
c.y = a.y;
}
}
d3.layout.cluster = function() {
var hierarchy = d3.layout.hierarchy().sort(null).value(null), separation = d3_layout_treeSeparation, size = [ 1, 1 ];
function cluster(d, i) {
var nodes = hierarchy.call(this, d, i), root = nodes[0], previousNode, x = 0;
d3_layout_treeVisitAfter(root, function(node) {
var children = node.children;
if (children && children.length) {
node.x = d3_layout_clusterX(children);
node.y = d3_layout_clusterY(children);
} else {
node.x = previousNode ? x += separation(node, previousNode) : 0;
node.y = 0;
previousNode = node;
}
});
var left = d3_layout_clusterLeft(root), right = d3_layout_clusterRight(root), x0 = left.x - separation(left, right) / 2, x1 = right.x + separation(right, left) / 2;
d3_layout_treeVisitAfter(root, function(node) {
node.x = (node.x - x0) / (x1 - x0) * size[0];
node.y = (1 - (root.y ? node.y / root.y : 1)) * size[1];
});
return nodes;
}
cluster.separation = function(x) {
if (!arguments.length) return separation;
separation = x;
return cluster;
};
cluster.size = function(x) {
if (!arguments.length) return size;
size = x;
return cluster;
};
return d3_layout_hierarchyRebind(cluster, hierarchy);
};
function d3_layout_clusterY(children) {
return 1 + d3.max(children, function(child) {
return child.y;
});
}
function d3_layout_clusterX(children) {
return children.reduce(function(x, child) {
return x + child.x;
}, 0) / children.length;
}
function d3_layout_clusterLeft(node) {
var children = node.children;
return children && children.length ? d3_layout_clusterLeft(children[0]) : node;
}
function d3_layout_clusterRight(node) {
var children = node.children, n;
return children && (n = children.length) ? d3_layout_clusterRight(children[n - 1]) : node;
}
d3.layout.tree = function() {
var hierarchy = d3.layout.hierarchy().sort(null).value(null), separation = d3_layout_treeSeparation, size = [ 1, 1 ];
function tree(d, i) {
var nodes = hierarchy.call(this, d, i), root = nodes[0];
function firstWalk(node, previousSibling) {
var children = node.children, layout = node._tree;
if (children && (n = children.length)) {
var n, firstChild = children[0], previousChild, ancestor = firstChild, child, i = -1;
while (++i < n) {
child = children[i];
firstWalk(child, previousChild);
ancestor = apportion(child, previousChild, ancestor);
previousChild = child;
}
d3_layout_treeShift(node);
var midpoint = .5 * (firstChild._tree.prelim + child._tree.prelim);
if (previousSibling) {
layout.prelim = previousSibling._tree.prelim + separation(node, previousSibling);
layout.mod = layout.prelim - midpoint;
} else {
layout.prelim = midpoint;
}
} else {
if (previousSibling) {
layout.prelim = previousSibling._tree.prelim + separation(node, previousSibling);
}
}
}
function secondWalk(node, x) {
node.x = node._tree.prelim + x;
var children = node.children;
if (children && (n = children.length)) {
var i = -1, n;
x += node._tree.mod;
while (++i < n) {
secondWalk(children[i], x);
}
}
}
function apportion(node, previousSibling, ancestor) {
if (previousSibling) {
var vip = node, vop = node, vim = previousSibling, vom = node.parent.children[0], sip = vip._tree.mod, sop = vop._tree.mod, sim = vim._tree.mod, som = vom._tree.mod, shift;
while (vim = d3_layout_treeRight(vim), vip = d3_layout_treeLeft(vip), vim && vip) {
vom = d3_layout_treeLeft(vom);
vop = d3_layout_treeRight(vop);
vop._tree.ancestor = node;
shift = vim._tree.prelim + sim - vip._tree.prelim - sip + separation(vim, vip);
if (shift > 0) {
d3_layout_treeMove(d3_layout_treeAncestor(vim, node, ancestor), node, shift);
sip += shift;
sop += shift;
}
sim += vim._tree.mod;
sip += vip._tree.mod;
som += vom._tree.mod;
sop += vop._tree.mod;
}
if (vim && !d3_layout_treeRight(vop)) {
vop._tree.thread = vim;
vop._tree.mod += sim - sop;
}
if (vip && !d3_layout_treeLeft(vom)) {
vom._tree.thread = vip;
vom._tree.mod += sip - som;
ancestor = node;
}
}
return ancestor;
}
d3_layout_treeVisitAfter(root, function(node, previousSibling) {
node._tree = {
ancestor: node,
prelim: 0,
mod: 0,
change: 0,
shift: 0,
number: previousSibling ? previousSibling._tree.number + 1 : 0
};
});
firstWalk(root);
secondWalk(root, -root._tree.prelim);
var left = d3_layout_treeSearch(root, d3_layout_treeLeftmost), right = d3_layout_treeSearch(root, d3_layout_treeRightmost), deep = d3_layout_treeSearch(root, d3_layout_treeDeepest), x0 = left.x - separation(left, right) / 2, x1 = right.x + separation(right, left) / 2, y1 = deep.depth || 1;
d3_layout_treeVisitAfter(root, function(node) {
node.x = (node.x - x0) / (x1 - x0) * size[0];
node.y = node.depth / y1 * size[1];
delete node._tree;
});
return nodes;
}
tree.separation = function(x) {
if (!arguments.length) return separation;
separation = x;
return tree;
};
tree.size = function(x) {
if (!arguments.length) return size;
size = x;
return tree;
};
return d3_layout_hierarchyRebind(tree, hierarchy);
};
function d3_layout_treeSeparation(a, b) {
return a.parent == b.parent ? 1 : 2;
}
function d3_layout_treeLeft(node) {
var children = node.children;
return children && children.length ? children[0] : node._tree.thread;
}
function d3_layout_treeRight(node) {
var children = node.children, n;
return children && (n = children.length) ? children[n - 1] : node._tree.thread;
}
function d3_layout_treeSearch(node, compare) {
var children = node.children;
if (children && (n = children.length)) {
var child, n, i = -1;
while (++i < n) {
if (compare(child = d3_layout_treeSearch(children[i], compare), node) > 0) {
node = child;
}
}
}
return node;
}
function d3_layout_treeRightmost(a, b) {
return a.x - b.x;
}
function d3_layout_treeLeftmost(a, b) {
return b.x - a.x;
}
function d3_layout_treeDeepest(a, b) {
return a.depth - b.depth;
}
function d3_layout_treeVisitAfter(node, callback) {
function visit(node, previousSibling) {
var children = node.children;
if (children && (n = children.length)) {
var child, previousChild = null, i = -1, n;
while (++i < n) {
child = children[i];
visit(child, previousChild);
previousChild = child;
}
}
callback(node, previousSibling);
}
visit(node, null);
}
function d3_layout_treeShift(node) {
var shift = 0, change = 0, children = node.children, i = children.length, child;
while (--i >= 0) {
child = children[i]._tree;
child.prelim += shift;
child.mod += shift;
shift += child.shift + (change += child.change);
}
}
function d3_layout_treeMove(ancestor, node, shift) {
ancestor = ancestor._tree;
node = node._tree;
var change = shift / (node.number - ancestor.number);
ancestor.change += change;
node.change -= change;
node.shift += shift;
node.prelim += shift;
node.mod += shift;
}
function d3_layout_treeAncestor(vim, node, ancestor) {
return vim._tree.ancestor.parent == node.parent ? vim._tree.ancestor : ancestor;
}
d3.layout.treemap = function() {
var hierarchy = d3.layout.hierarchy(), round = Math.round, size = [ 1, 1 ], padding = null, pad = d3_layout_treemapPadNull, sticky = false, stickies, mode = "squarify", ratio = .5 * (1 + Math.sqrt(5));
function scale(children, k) {
var i = -1, n = children.length, child, area;
while (++i < n) {
area = (child = children[i]).value * (k < 0 ? 0 : k);
child.area = isNaN(area) || area <= 0 ? 0 : area;
}
}
function squarify(node) {
var children = node.children;
if (children && children.length) {
var rect = pad(node), row = [], remaining = children.slice(), child, best = Infinity, score, u = mode === "slice" ? rect.dx : mode === "dice" ? rect.dy : mode === "slice-dice" ? node.depth & 1 ? rect.dy : rect.dx : Math.min(rect.dx, rect.dy), n;
scale(remaining, rect.dx * rect.dy / node.value);
row.area = 0;
while ((n = remaining.length) > 0) {
row.push(child = remaining[n - 1]);
row.area += child.area;
if (mode !== "squarify" || (score = worst(row, u)) <= best) {
remaining.pop();
best = score;
} else {
row.area -= row.pop().area;
position(row, u, rect, false);
u = Math.min(rect.dx, rect.dy);
row.length = row.area = 0;
best = Infinity;
}
}
if (row.length) {
position(row, u, rect, true);
row.length = row.area = 0;
}
children.forEach(squarify);
}
}
function stickify(node) {
var children = node.children;
if (children && children.length) {
var rect = pad(node), remaining = children.slice(), child, row = [];
scale(remaining, rect.dx * rect.dy / node.value);
row.area = 0;
while (child = remaining.pop()) {
row.push(child);
row.area += child.area;
if (child.z != null) {
position(row, child.z ? rect.dx : rect.dy, rect, !remaining.length);
row.length = row.area = 0;
}
}
children.forEach(stickify);
}
}
function worst(row, u) {
var s = row.area, r, rmax = 0, rmin = Infinity, i = -1, n = row.length;
while (++i < n) {
if (!(r = row[i].area)) continue;
if (r < rmin) rmin = r;
if (r > rmax) rmax = r;
}
s *= s;
u *= u;
return s ? Math.max(u * rmax * ratio / s, s / (u * rmin * ratio)) : Infinity;
}
function position(row, u, rect, flush) {
var i = -1, n = row.length, x = rect.x, y = rect.y, v = u ? round(row.area / u) : 0, o;
if (u == rect.dx) {
if (flush || v > rect.dy) v = rect.dy;
while (++i < n) {
o = row[i];
o.x = x;
o.y = y;
o.dy = v;
x += o.dx = Math.min(rect.x + rect.dx - x, v ? round(o.area / v) : 0);
}
o.z = true;
o.dx += rect.x + rect.dx - x;
rect.y += v;
rect.dy -= v;
} else {
if (flush || v > rect.dx) v = rect.dx;
while (++i < n) {
o = row[i];
o.x = x;
o.y = y;
o.dx = v;
y += o.dy = Math.min(rect.y + rect.dy - y, v ? round(o.area / v) : 0);
}
o.z = false;
o.dy += rect.y + rect.dy - y;
rect.x += v;
rect.dx -= v;
}
}
function treemap(d) {
var nodes = stickies || hierarchy(d), root = nodes[0];
root.x = 0;
root.y = 0;
root.dx = size[0];
root.dy = size[1];
if (stickies) hierarchy.revalue(root);
scale([ root ], root.dx * root.dy / root.value);
(stickies ? stickify : squarify)(root);
if (sticky) stickies = nodes;
return nodes;
}
treemap.size = function(x) {
if (!arguments.length) return size;
size = x;
return treemap;
};
treemap.padding = function(x) {
if (!arguments.length) return padding;
function padFunction(node) {
var p = x.call(treemap, node, node.depth);
return p == null ? d3_layout_treemapPadNull(node) : d3_layout_treemapPad(node, typeof p === "number" ? [ p, p, p, p ] : p);
}
function padConstant(node) {
return d3_layout_treemapPad(node, x);
}
var type;
pad = (padding = x) == null ? d3_layout_treemapPadNull : (type = typeof x) === "function" ? padFunction : type === "number" ? (x = [ x, x, x, x ],
padConstant) : padConstant;
return treemap;
};
treemap.round = function(x) {
if (!arguments.length) return round != Number;
round = x ? Math.round : Number;
return treemap;
};
treemap.sticky = function(x) {
if (!arguments.length) return sticky;
sticky = x;
stickies = null;
return treemap;
};
treemap.ratio = function(x) {
if (!arguments.length) return ratio;
ratio = x;
return treemap;
};
treemap.mode = function(x) {
if (!arguments.length) return mode;
mode = x + "";
return treemap;
};
return d3_layout_hierarchyRebind(treemap, hierarchy);
};
function d3_layout_treemapPadNull(node) {
return {
x: node.x,
y: node.y,
dx: node.dx,
dy: node.dy
};
}
function d3_layout_treemapPad(node, padding) {
var x = node.x + padding[3], y = node.y + padding[0], dx = node.dx - padding[1] - padding[3], dy = node.dy - padding[0] - padding[2];
if (dx < 0) {
x += dx / 2;
dx = 0;
}
if (dy < 0) {
y += dy / 2;
dy = 0;
}
return {
x: x,
y: y,
dx: dx,
dy: dy
};
}
function d3_dsv(delimiter, mimeType) {
var reFormat = new RegExp('["' + delimiter + "\n]"), delimiterCode = delimiter.charCodeAt(0);
function dsv(url, callback) {
return d3.xhr(url, mimeType, callback).response(response);
}
function response(request) {
return dsv.parse(request.responseText);
}
dsv.parse = function(text) {
var o;
return dsv.parseRows(text, function(row) {
if (o) return o(row);
o = new Function("d", "return {" + row.map(function(name, i) {
return JSON.stringify(name) + ": d[" + i + "]";
}).join(",") + "}");
});
};
dsv.parseRows = function(text, f) {
var EOL = {}, EOF = {}, rows = [], N = text.length, I = 0, n = 0, t, eol;
function token() {
if (I >= N) return EOF;
if (eol) return eol = false, EOL;
var j = I;
if (text.charCodeAt(j) === 34) {
var i = j;
while (i++ < N) {
if (text.charCodeAt(i) === 34) {
if (text.charCodeAt(i + 1) !== 34) break;
++i;
}
}
I = i + 2;
var c = text.charCodeAt(i + 1);
if (c === 13) {
eol = true;
if (text.charCodeAt(i + 2) === 10) ++I;
} else if (c === 10) {
eol = true;
}
return text.substring(j + 1, i).replace(/""/g, '"');
}
while (I < N) {
var c = text.charCodeAt(I++), k = 1;
if (c === 10) eol = true; else if (c === 13) {
eol = true;
if (text.charCodeAt(I) === 10) ++I, ++k;
} else if (c !== delimiterCode) continue;
return text.substring(j, I - k);
}
return text.substring(j);
}
while ((t = token()) !== EOF) {
var a = [];
while (t !== EOL && t !== EOF) {
a.push(t);
t = token();
}
if (f && !(a = f(a, n++))) continue;
rows.push(a);
}
return rows;
};
dsv.format = function(rows) {
return rows.map(formatRow).join("\n");
};
function formatRow(row) {
return row.map(formatValue).join(delimiter);
}
function formatValue(text) {
return reFormat.test(text) ? '"' + text.replace(/\"/g, '""') + '"' : text;
}
return dsv;
}
d3.csv = d3_dsv(",", "text/csv");
d3.tsv = d3_dsv(" ", "text/tab-separated-values");
d3.geo = {};
d3.geo.stream = function(object, listener) {
if (d3_geo_streamObjectType.hasOwnProperty(object.type)) {
d3_geo_streamObjectType[object.type](object, listener);
} else {
d3_geo_streamGeometry(object, listener);
}
};
function d3_geo_streamGeometry(geometry, listener) {
if (d3_geo_streamGeometryType.hasOwnProperty(geometry.type)) {
d3_geo_streamGeometryType[geometry.type](geometry, listener);
}
}
var d3_geo_streamObjectType = {
Feature: function(feature, listener) {
d3_geo_streamGeometry(feature.geometry, listener);
},
FeatureCollection: function(object, listener) {
var features = object.features, i = -1, n = features.length;
while (++i < n) d3_geo_streamGeometry(features[i].geometry, listener);
}
};
var d3_geo_streamGeometryType = {
Sphere: function(object, listener) {
listener.sphere();
},
Point: function(object, listener) {
var coordinate = object.coordinates;
listener.point(coordinate[0], coordinate[1]);
},
MultiPoint: function(object, listener) {
var coordinates = object.coordinates, i = -1, n = coordinates.length, coordinate;
while (++i < n) coordinate = coordinates[i], listener.point(coordinate[0], coordinate[1]);
},
LineString: function(object, listener) {
d3_geo_streamLine(object.coordinates, listener, 0);
},
MultiLineString: function(object, listener) {
var coordinates = object.coordinates, i = -1, n = coordinates.length;
while (++i < n) d3_geo_streamLine(coordinates[i], listener, 0);
},
Polygon: function(object, listener) {
d3_geo_streamPolygon(object.coordinates, listener);
},
MultiPolygon: function(object, listener) {
var coordinates = object.coordinates, i = -1, n = coordinates.length;
while (++i < n) d3_geo_streamPolygon(coordinates[i], listener);
},
GeometryCollection: function(object, listener) {
var geometries = object.geometries, i = -1, n = geometries.length;
while (++i < n) d3_geo_streamGeometry(geometries[i], listener);
}
};
function d3_geo_streamLine(coordinates, listener, closed) {
var i = -1, n = coordinates.length - closed, coordinate;
listener.lineStart();
while (++i < n) coordinate = coordinates[i], listener.point(coordinate[0], coordinate[1]);
listener.lineEnd();
}
function d3_geo_streamPolygon(coordinates, listener) {
var i = -1, n = coordinates.length;
listener.polygonStart();
while (++i < n) d3_geo_streamLine(coordinates[i], listener, 1);
listener.polygonEnd();
}
function d3_geo_spherical(cartesian) {
return [ Math.atan2(cartesian[1], cartesian[0]), Math.asin(Math.max(-1, Math.min(1, cartesian[2]))) ];
}
function d3_geo_sphericalEqual(a, b) {
return Math.abs(a[0] - b[0]) < ε && Math.abs(a[1] - b[1]) < ε;
}
function d3_geo_cartesian(spherical) {
var λ = spherical[0], φ = spherical[1], cosφ = Math.cos(φ);
return [ cosφ * Math.cos(λ), cosφ * Math.sin(λ), Math.sin(φ) ];
}
function d3_geo_cartesianDot(a, b) {
return a[0] * b[0] + a[1] * b[1] + a[2] * b[2];
}
function d3_geo_cartesianCross(a, b) {
return [ a[1] * b[2] - a[2] * b[1], a[2] * b[0] - a[0] * b[2], a[0] * b[1] - a[1] * b[0] ];
}
function d3_geo_cartesianAdd(a, b) {
a[0] += b[0];
a[1] += b[1];
a[2] += b[2];
}
function d3_geo_cartesianScale(vector, k) {
return [ vector[0] * k, vector[1] * k, vector[2] * k ];
}
function d3_geo_cartesianNormalize(d) {
var l = Math.sqrt(d[0] * d[0] + d[1] * d[1] + d[2] * d[2]);
d[0] /= l;
d[1] /= l;
d[2] /= l;
}
function d3_geo_resample(project) {
var δ2 = .5, maxDepth = 16;
function resample(stream) {
var λ0, x0, y0, a0, b0, c0;
var resample = {
point: point,
lineStart: lineStart,
lineEnd: lineEnd,
polygonStart: function() {
stream.polygonStart();
resample.lineStart = polygonLineStart;
},
polygonEnd: function() {
stream.polygonEnd();
resample.lineStart = lineStart;
}
};
function point(x, y) {
x = project(x, y);
stream.point(x[0], x[1]);
}
function lineStart() {
x0 = NaN;
resample.point = linePoint;
stream.lineStart();
}
function linePoint(λ, φ) {
var c = d3_geo_cartesian([ λ, φ ]), p = project(λ, φ);
resampleLineTo(x0, y0, λ0, a0, b0, c0, x0 = p[0], y0 = p[1], λ0 = λ, a0 = c[0], b0 = c[1], c0 = c[2], maxDepth, stream);
stream.point(x0, y0);
}
function lineEnd() {
resample.point = point;
stream.lineEnd();
}
function polygonLineStart() {
var λ00, φ00, x00, y00, a00, b00, c00;
lineStart();
resample.point = function(λ, φ) {
linePoint(λ00 = λ, φ00 = φ), x00 = x0, y00 = y0, a00 = a0, b00 = b0, c00 = c0;
resample.point = linePoint;
};
resample.lineEnd = function() {
resampleLineTo(x0, y0, λ0, a0, b0, c0, x00, y00, λ00, a00, b00, c00, maxDepth, stream);
resample.lineEnd = lineEnd;
lineEnd();
};
}
return resample;
}
function resampleLineTo(x0, y0, λ0, a0, b0, c0, x1, y1, λ1, a1, b1, c1, depth, stream) {
var dx = x1 - x0, dy = y1 - y0, d2 = dx * dx + dy * dy;
if (d2 > 4 * δ2 && depth--) {
var a = a0 + a1, b = b0 + b1, c = c0 + c1, m = Math.sqrt(a * a + b * b + c * c), φ2 = Math.asin(c /= m), λ2 = Math.abs(Math.abs(c) - 1) < ε ? (λ0 + λ1) / 2 : Math.atan2(b, a), p = project(λ2, φ2), x2 = p[0], y2 = p[1], dx2 = x2 - x0, dy2 = y2 - y0, dz = dy * dx2 - dx * dy2;
if (dz * dz / d2 > δ2 || Math.abs((dx * dx2 + dy * dy2) / d2 - .5) > .3) {
resampleLineTo(x0, y0, λ0, a0, b0, c0, x2, y2, λ2, a /= m, b /= m, c, depth, stream);
stream.point(x2, y2);
resampleLineTo(x2, y2, λ2, a, b, c, x1, y1, λ1, a1, b1, c1, depth, stream);
}
}
}
resample.precision = function(_) {
if (!arguments.length) return Math.sqrt(δ2);
maxDepth = (δ2 = _ * _) > 0 && 16;
return resample;
};
return resample;
}
d3.geo.albersUsa = function() {
var lower48 = d3.geo.albers();
var alaska = d3.geo.albers().rotate([ 160, 0 ]).center([ 0, 60 ]).parallels([ 55, 65 ]);
var hawaii = d3.geo.albers().rotate([ 160, 0 ]).center([ 0, 20 ]).parallels([ 8, 18 ]);
var puertoRico = d3.geo.albers().rotate([ 60, 0 ]).center([ 0, 10 ]).parallels([ 8, 18 ]);
function albersUsa(coordinates) {
return projection(coordinates)(coordinates);
}
function projection(point) {
var lon = point[0], lat = point[1];
return lat > 50 ? alaska : lon < -140 ? hawaii : lat < 21 ? puertoRico : lower48;
}
albersUsa.scale = function(x) {
if (!arguments.length) return lower48.scale();
lower48.scale(x);
alaska.scale(x * .6);
hawaii.scale(x);
puertoRico.scale(x * 1.5);
return albersUsa.translate(lower48.translate());
};
albersUsa.translate = function(x) {
if (!arguments.length) return lower48.translate();
var dz = lower48.scale(), dx = x[0], dy = x[1];
lower48.translate(x);
alaska.translate([ dx - .4 * dz, dy + .17 * dz ]);
hawaii.translate([ dx - .19 * dz, dy + .2 * dz ]);
puertoRico.translate([ dx + .58 * dz, dy + .43 * dz ]);
return albersUsa;
};
return albersUsa.scale(lower48.scale());
};
function d3_geo_albers(φ0, φ1) {
var sinφ0 = Math.sin(φ0), n = (sinφ0 + Math.sin(φ1)) / 2, C = 1 + sinφ0 * (2 * n - sinφ0), ρ0 = Math.sqrt(C) / n;
function albers(λ, φ) {
var ρ = Math.sqrt(C - 2 * n * Math.sin(φ)) / n;
return [ ρ * Math.sin(λ *= n), ρ0 - ρ * Math.cos(λ) ];
}
albers.invert = function(x, y) {
var ρ0_y = ρ0 - y;
return [ Math.atan2(x, ρ0_y) / n, Math.asin((C - (x * x + ρ0_y * ρ0_y) * n * n) / (2 * n)) ];
};
return albers;
}
(d3.geo.albers = function() {
var φ0 = 29.5 * d3_radians, φ1 = 45.5 * d3_radians, m = d3_geo_projectionMutator(d3_geo_albers), p = m(φ0, φ1);
p.parallels = function(_) {
if (!arguments.length) return [ φ0 * d3_degrees, φ1 * d3_degrees ];
return m(φ0 = _[0] * d3_radians, φ1 = _[1] * d3_radians);
};
return p.rotate([ 98, 0 ]).center([ 0, 38 ]).scale(1e3);
}).raw = d3_geo_albers;
var d3_geo_azimuthalEqualArea = d3_geo_azimuthal(function(cosλcosφ) {
return Math.sqrt(2 / (1 + cosλcosφ));
}, function(ρ) {
return 2 * Math.asin(ρ / 2);
});
(d3.geo.azimuthalEqualArea = function() {
return d3_geo_projection(d3_geo_azimuthalEqualArea);
}).raw = d3_geo_azimuthalEqualArea;
var d3_geo_azimuthalEquidistant = d3_geo_azimuthal(function(cosλcosφ) {
var c = Math.acos(cosλcosφ);
return c && c / Math.sin(c);
}, d3_identity);
(d3.geo.azimuthalEquidistant = function() {
return d3_geo_projection(d3_geo_azimuthalEquidistant);
}).raw = d3_geo_azimuthalEquidistant;
d3.geo.bounds = d3_geo_bounds(d3_identity);
function d3_geo_bounds(projectStream) {
var x0, y0, x1, y1;
var bound = {
point: boundPoint,
lineStart: d3_noop,
lineEnd: d3_noop,
polygonStart: function() {
bound.lineEnd = boundPolygonLineEnd;
},
polygonEnd: function() {
bound.point = boundPoint;
}
};
function boundPoint(x, y) {
if (x < x0) x0 = x;
if (x > x1) x1 = x;
if (y < y0) y0 = y;
if (y > y1) y1 = y;
}
function boundPolygonLineEnd() {
bound.point = bound.lineEnd = d3_noop;
}
return function(feature) {
y1 = x1 = -(x0 = y0 = Infinity);
d3.geo.stream(feature, projectStream(bound));
return [ [ x0, y0 ], [ x1, y1 ] ];
};
}
d3.geo.centroid = function(object) {
d3_geo_centroidDimension = d3_geo_centroidW = d3_geo_centroidX = d3_geo_centroidY = d3_geo_centroidZ = 0;
d3.geo.stream(object, d3_geo_centroid);
var m;
if (d3_geo_centroidW && Math.abs(m = Math.sqrt(d3_geo_centroidX * d3_geo_centroidX + d3_geo_centroidY * d3_geo_centroidY + d3_geo_centroidZ * d3_geo_centroidZ)) > ε) {
return [ Math.atan2(d3_geo_centroidY, d3_geo_centroidX) * d3_degrees, Math.asin(Math.max(-1, Math.min(1, d3_geo_centroidZ / m))) * d3_degrees ];
}
};
var d3_geo_centroidDimension, d3_geo_centroidW, d3_geo_centroidX, d3_geo_centroidY, d3_geo_centroidZ;
var d3_geo_centroid = {
sphere: function() {
if (d3_geo_centroidDimension < 2) {
d3_geo_centroidDimension = 2;
d3_geo_centroidW = d3_geo_centroidX = d3_geo_centroidY = d3_geo_centroidZ = 0;
}
},
point: d3_geo_centroidPoint,
lineStart: d3_geo_centroidLineStart,
lineEnd: d3_geo_centroidLineEnd,
polygonStart: function() {
if (d3_geo_centroidDimension < 2) {
d3_geo_centroidDimension = 2;
d3_geo_centroidW = d3_geo_centroidX = d3_geo_centroidY = d3_geo_centroidZ = 0;
}
d3_geo_centroid.lineStart = d3_geo_centroidRingStart;
},
polygonEnd: function() {
d3_geo_centroid.lineStart = d3_geo_centroidLineStart;
}
};
function d3_geo_centroidPoint(λ, φ) {
if (d3_geo_centroidDimension) return;
++d3_geo_centroidW;
λ *= d3_radians;
var cosφ = Math.cos(φ *= d3_radians);
d3_geo_centroidX += (cosφ * Math.cos(λ) - d3_geo_centroidX) / d3_geo_centroidW;
d3_geo_centroidY += (cosφ * Math.sin(λ) - d3_geo_centroidY) / d3_geo_centroidW;
d3_geo_centroidZ += (Math.sin(φ) - d3_geo_centroidZ) / d3_geo_centroidW;
}
function d3_geo_centroidRingStart() {
var λ00, φ00;
d3_geo_centroidDimension = 1;
d3_geo_centroidLineStart();
d3_geo_centroidDimension = 2;
var linePoint = d3_geo_centroid.point;
d3_geo_centroid.point = function(λ, φ) {
linePoint(λ00 = λ, φ00 = φ);
};
d3_geo_centroid.lineEnd = function() {
d3_geo_centroid.point(λ00, φ00);
d3_geo_centroidLineEnd();
d3_geo_centroid.lineEnd = d3_geo_centroidLineEnd;
};
}
function d3_geo_centroidLineStart() {
var x0, y0, z0;
if (d3_geo_centroidDimension > 1) return;
if (d3_geo_centroidDimension < 1) {
d3_geo_centroidDimension = 1;
d3_geo_centroidW = d3_geo_centroidX = d3_geo_centroidY = d3_geo_centroidZ = 0;
}
d3_geo_centroid.point = function(λ, φ) {
λ *= d3_radians;
var cosφ = Math.cos(φ *= d3_radians);
x0 = cosφ * Math.cos(λ);
y0 = cosφ * Math.sin(λ);
z0 = Math.sin(φ);
d3_geo_centroid.point = nextPoint;
};
function nextPoint(λ, φ) {
λ *= d3_radians;
var cosφ = Math.cos(φ *= d3_radians), x = cosφ * Math.cos(λ), y = cosφ * Math.sin(λ), z = Math.sin(φ), w = Math.atan2(Math.sqrt((w = y0 * z - z0 * y) * w + (w = z0 * x - x0 * z) * w + (w = x0 * y - y0 * x) * w), x0 * x + y0 * y + z0 * z);
d3_geo_centroidW += w;
d3_geo_centroidX += w * (x0 + (x0 = x));
d3_geo_centroidY += w * (y0 + (y0 = y));
d3_geo_centroidZ += w * (z0 + (z0 = z));
}
}
function d3_geo_centroidLineEnd() {
d3_geo_centroid.point = d3_geo_centroidPoint;
}
d3.geo.circle = function() {
var origin = [ 0, 0 ], angle, precision = 6, interpolate;
function circle() {
var center = typeof origin === "function" ? origin.apply(this, arguments) : origin, rotate = d3_geo_rotation(-center[0] * d3_radians, -center[1] * d3_radians, 0).invert, ring = [];
interpolate(null, null, 1, {
point: function(x, y) {
ring.push(x = rotate(x, y));
x[0] *= d3_degrees, x[1] *= d3_degrees;
}
});
return {
type: "Polygon",
coordinates: [ ring ]
};
}
circle.origin = function(x) {
if (!arguments.length) return origin;
origin = x;
return circle;
};
circle.angle = function(x) {
if (!arguments.length) return angle;
interpolate = d3_geo_circleInterpolate((angle = +x) * d3_radians, precision * d3_radians);
return circle;
};
circle.precision = function(_) {
if (!arguments.length) return precision;
interpolate = d3_geo_circleInterpolate(angle * d3_radians, (precision = +_) * d3_radians);
return circle;
};
return circle.angle(90);
};
function d3_geo_circleInterpolate(radians, precision) {
var cr = Math.cos(radians), sr = Math.sin(radians);
return function(from, to, direction, listener) {
if (from != null) {
from = d3_geo_circleAngle(cr, from);
to = d3_geo_circleAngle(cr, to);
if (direction > 0 ? from < to : from > to) from += direction * 2 * π;
} else {
from = radians + direction * 2 * π;
to = radians;
}
var point;
for (var step = direction * precision, t = from; direction > 0 ? t > to : t < to; t -= step) {
listener.point((point = d3_geo_spherical([ cr, -sr * Math.cos(t), -sr * Math.sin(t) ]))[0], point[1]);
}
};
}
function d3_geo_circleAngle(cr, point) {
var a = d3_geo_cartesian(point);
a[0] -= cr;
d3_geo_cartesianNormalize(a);
var angle = Math.acos(Math.max(-1, Math.min(1, -a[1])));
return ((-a[2] < 0 ? -angle : angle) + 2 * Math.PI - ε) % (2 * Math.PI);
}
function d3_geo_clip(pointVisible, clipLine, interpolate) {
return function(listener) {
var line = clipLine(listener);
var clip = {
point: point,
lineStart: lineStart,
lineEnd: lineEnd,
polygonStart: function() {
clip.point = pointRing;
clip.lineStart = ringStart;
clip.lineEnd = ringEnd;
invisible = false;
invisibleArea = visibleArea = 0;
segments = [];
listener.polygonStart();
},
polygonEnd: function() {
clip.point = point;
clip.lineStart = lineStart;
clip.lineEnd = lineEnd;
segments = d3.merge(segments);
if (segments.length) {
d3_geo_clipPolygon(segments, interpolate, listener);
} else if (visibleArea < -ε || invisible && invisibleArea < -ε) {
listener.lineStart();
interpolate(null, null, 1, listener);
listener.lineEnd();
}
listener.polygonEnd();
segments = null;
},
sphere: function() {
listener.polygonStart();
listener.lineStart();
interpolate(null, null, 1, listener);
listener.lineEnd();
listener.polygonEnd();
}
};
function point(λ, φ) {
if (pointVisible(λ, φ)) listener.point(λ, φ);
}
function pointLine(λ, φ) {
line.point(λ, φ);
}
function lineStart() {
clip.point = pointLine;
line.lineStart();
}
function lineEnd() {
clip.point = point;
line.lineEnd();
}
var segments, visibleArea, invisibleArea, invisible;
var buffer = d3_geo_clipBufferListener(), ringListener = clipLine(buffer), ring;
function pointRing(λ, φ) {
ringListener.point(λ, φ);
ring.push([ λ, φ ]);
}
function ringStart() {
ringListener.lineStart();
ring = [];
}
function ringEnd() {
pointRing(ring[0][0], ring[0][1]);
ringListener.lineEnd();
var clean = ringListener.clean(), ringSegments = buffer.buffer(), segment, n = ringSegments.length;
if (!n) {
invisible = true;
invisibleArea += d3_geo_clipAreaRing(ring, -1);
ring = null;
return;
}
ring = null;
if (clean & 1) {
segment = ringSegments[0];
visibleArea += d3_geo_clipAreaRing(segment, 1);
var n = segment.length - 1, i = -1, point;
listener.lineStart();
while (++i < n) listener.point((point = segment[i])[0], point[1]);
listener.lineEnd();
return;
}
if (n > 1 && clean & 2) ringSegments.push(ringSegments.pop().concat(ringSegments.shift()));
segments.push(ringSegments.filter(d3_geo_clipSegmentLength1));
}
return clip;
};
}
function d3_geo_clipPolygon(segments, interpolate, listener) {
var subject = [], clip = [];
segments.forEach(function(segment) {
if ((n = segment.length) <= 1) return;
var n, p0 = segment[0], p1 = segment[n - 1];
if (d3_geo_sphericalEqual(p0, p1)) {
listener.lineStart();
for (var i = 0; i < n; ++i) listener.point((p0 = segment[i])[0], p0[1]);
listener.lineEnd();
return;
}
var a = {
point: p0,
points: segment,
other: null,
visited: false,
entry: true,
subject: true
}, b = {
point: p0,
points: [ p0 ],
other: a,
visited: false,
entry: false,
subject: false
};
a.other = b;
subject.push(a);
clip.push(b);
a = {
point: p1,
points: [ p1 ],
other: null,
visited: false,
entry: false,
subject: true
};
b = {
point: p1,
points: [ p1 ],
other: a,
visited: false,
entry: true,
subject: false
};
a.other = b;
subject.push(a);
clip.push(b);
});
clip.sort(d3_geo_clipSort);
d3_geo_clipLinkCircular(subject);
d3_geo_clipLinkCircular(clip);
if (!subject.length) return;
var start = subject[0], current, points, point;
while (1) {
current = start;
while (current.visited) if ((current = current.next) === start) return;
points = current.points;
listener.lineStart();
do {
current.visited = current.other.visited = true;
if (current.entry) {
if (current.subject) {
for (var i = 0; i < points.length; i++) listener.point((point = points[i])[0], point[1]);
} else {
interpolate(current.point, current.next.point, 1, listener);
}
current = current.next;
} else {
if (current.subject) {
points = current.prev.points;
for (var i = points.length; --i >= 0; ) listener.point((point = points[i])[0], point[1]);
} else {
interpolate(current.point, current.prev.point, -1, listener);
}
current = current.prev;
}
current = current.other;
points = current.points;
} while (!current.visited);
listener.lineEnd();
}
}
function d3_geo_clipLinkCircular(array) {
if (!(n = array.length)) return;
var n, i = 0, a = array[0], b;
while (++i < n) {
a.next = b = array[i];
b.prev = a;
a = b;
}
a.next = b = array[0];
b.prev = a;
}
function d3_geo_clipSort(a, b) {
return ((a = a.point)[0] < 0 ? a[1] - π / 2 - ε : π / 2 - a[1]) - ((b = b.point)[0] < 0 ? b[1] - π / 2 - ε : π / 2 - b[1]);
}
function d3_geo_clipSegmentLength1(segment) {
return segment.length > 1;
}
function d3_geo_clipBufferListener() {
var lines = [], line;
return {
lineStart: function() {
lines.push(line = []);
},
point: function(λ, φ) {
line.push([ λ, φ ]);
},
lineEnd: d3_noop,
buffer: function() {
var buffer = lines;
lines = [];
line = null;
return buffer;
}
};
}
function d3_geo_clipAreaRing(ring, invisible) {
if (!(n = ring.length)) return 0;
var n, i = 0, area = 0, p = ring[0], λ = p[0], φ = p[1], cosφ = Math.cos(φ), x0 = Math.atan2(invisible * Math.sin(λ) * cosφ, Math.sin(φ)), y0 = 1 - invisible * Math.cos(λ) * cosφ, x1 = x0, x, y;
while (++i < n) {
p = ring[i];
cosφ = Math.cos(φ = p[1]);
x = Math.atan2(invisible * Math.sin(λ = p[0]) * cosφ, Math.sin(φ));
y = 1 - invisible * Math.cos(λ) * cosφ;
if (Math.abs(y0 - 2) < ε && Math.abs(y - 2) < ε) continue;
if (Math.abs(y) < ε || Math.abs(y0) < ε) {} else if (Math.abs(Math.abs(x - x0) - π) < ε) {
if (y + y0 > 2) area += 4 * (x - x0);
} else if (Math.abs(y0 - 2) < ε) area += 4 * (x - x1); else area += ((3 * π + x - x0) % (2 * π) - π) * (y0 + y);
x1 = x0, x0 = x, y0 = y;
}
return area;
}
var d3_geo_clipAntimeridian = d3_geo_clip(d3_true, d3_geo_clipAntimeridianLine, d3_geo_clipAntimeridianInterpolate);
function d3_geo_clipAntimeridianLine(listener) {
var λ0 = NaN, φ0 = NaN, sλ0 = NaN, clean;
return {
lineStart: function() {
listener.lineStart();
clean = 1;
},
point: function(λ1, φ1) {
var sλ1 = λ1 > 0 ? π : -π, dλ = Math.abs(λ1 - λ0);
if (Math.abs(dλ - π) < ε) {
listener.point(λ0, φ0 = (φ0 + φ1) / 2 > 0 ? π / 2 : -π / 2);
listener.point(sλ0, φ0);
listener.lineEnd();
listener.lineStart();
listener.point(sλ1, φ0);
listener.point(λ1, φ0);
clean = 0;
} else if (sλ0 !== sλ1 && dλ >= π) {
if (Math.abs(λ0 - sλ0) < ε) λ0 -= sλ0 * ε;
if (Math.abs(λ1 - sλ1) < ε) λ1 -= sλ1 * ε;
φ0 = d3_geo_clipAntimeridianIntersect(λ0, φ0, λ1, φ1);
listener.point(sλ0, φ0);
listener.lineEnd();
listener.lineStart();
listener.point(sλ1, φ0);
clean = 0;
}
listener.point(λ0 = λ1, φ0 = φ1);
sλ0 = sλ1;
},
lineEnd: function() {
listener.lineEnd();
λ0 = φ0 = NaN;
},
clean: function() {
return 2 - clean;
}
};
}
function d3_geo_clipAntimeridianIntersect(λ0, φ0, λ1, φ1) {
var cosφ0, cosφ1, sinλ0_λ1 = Math.sin(λ0 - λ1);
return Math.abs(sinλ0_λ1) > ε ? Math.atan((Math.sin(φ0) * (cosφ1 = Math.cos(φ1)) * Math.sin(λ1) - Math.sin(φ1) * (cosφ0 = Math.cos(φ0)) * Math.sin(λ0)) / (cosφ0 * cosφ1 * sinλ0_λ1)) : (φ0 + φ1) / 2;
}
function d3_geo_clipAntimeridianInterpolate(from, to, direction, listener) {
var φ;
if (from == null) {
φ = direction * π / 2;
listener.point(-π, φ);
listener.point(0, φ);
listener.point(π, φ);
listener.point(π, 0);
listener.point(π, -φ);
listener.point(0, -φ);
listener.point(-π, -φ);
listener.point(-π, 0);
listener.point(-π, φ);
} else if (Math.abs(from[0] - to[0]) > ε) {
var s = (from[0] < to[0] ? 1 : -1) * π;
φ = direction * s / 2;
listener.point(-s, φ);
listener.point(0, φ);
listener.point(s, φ);
} else {
listener.point(to[0], to[1]);
}
}
function d3_geo_clipCircle(degrees) {
var radians = degrees * d3_radians, cr = Math.cos(radians), interpolate = d3_geo_circleInterpolate(radians, 6 * d3_radians);
return d3_geo_clip(visible, clipLine, interpolate);
function visible(λ, φ) {
return Math.cos(λ) * Math.cos(φ) > cr;
}
function clipLine(listener) {
var point0, v0, v00, clean;
return {
lineStart: function() {
v00 = v0 = false;
clean = 1;
},
point: function(λ, φ) {
var point1 = [ λ, φ ], point2, v = visible(λ, φ);
if (!point0 && (v00 = v0 = v)) listener.lineStart();
if (v !== v0) {
point2 = intersect(point0, point1);
if (d3_geo_sphericalEqual(point0, point2) || d3_geo_sphericalEqual(point1, point2)) {
point1[0] += ε;
point1[1] += ε;
v = visible(point1[0], point1[1]);
}
}
if (v !== v0) {
clean = 0;
if (v0 = v) {
listener.lineStart();
point2 = intersect(point1, point0);
listener.point(point2[0], point2[1]);
} else {
point2 = intersect(point0, point1);
listener.point(point2[0], point2[1]);
listener.lineEnd();
}
point0 = point2;
}
if (v && (!point0 || !d3_geo_sphericalEqual(point0, point1))) listener.point(point1[0], point1[1]);
point0 = point1;
},
lineEnd: function() {
if (v0) listener.lineEnd();
point0 = null;
},
clean: function() {
return clean | (v00 && v0) << 1;
}
};
}
function intersect(a, b) {
var pa = d3_geo_cartesian(a, 0), pb = d3_geo_cartesian(b, 0);
var n1 = [ 1, 0, 0 ], n2 = d3_geo_cartesianCross(pa, pb), n2n2 = d3_geo_cartesianDot(n2, n2), n1n2 = n2[0], determinant = n2n2 - n1n2 * n1n2;
if (!determinant) return a;
var c1 = cr * n2n2 / determinant, c2 = -cr * n1n2 / determinant, n1xn2 = d3_geo_cartesianCross(n1, n2), A = d3_geo_cartesianScale(n1, c1), B = d3_geo_cartesianScale(n2, c2);
d3_geo_cartesianAdd(A, B);
var u = n1xn2, w = d3_geo_cartesianDot(A, u), uu = d3_geo_cartesianDot(u, u), t = Math.sqrt(w * w - uu * (d3_geo_cartesianDot(A, A) - 1)), q = d3_geo_cartesianScale(u, (-w - t) / uu);
d3_geo_cartesianAdd(q, A);
return d3_geo_spherical(q);
}
}
function d3_geo_compose(a, b) {
function compose(x, y) {
return x = a(x, y), b(x[0], x[1]);
}
if (a.invert && b.invert) compose.invert = function(x, y) {
return x = b.invert(x, y), x && a.invert(x[0], x[1]);
};
return compose;
}
function d3_geo_equirectangular(λ, φ) {
return [ λ, φ ];
}
(d3.geo.equirectangular = function() {
return d3_geo_projection(d3_geo_equirectangular).scale(250 / π);
}).raw = d3_geo_equirectangular.invert = d3_geo_equirectangular;
var d3_geo_gnomonic = d3_geo_azimuthal(function(cosλcosφ) {
return 1 / cosλcosφ;
}, Math.atan);
(d3.geo.gnomonic = function() {
return d3_geo_projection(d3_geo_gnomonic);
}).raw = d3_geo_gnomonic;
d3.geo.graticule = function() {
var x1, x0, y1, y0, dx = 22.5, dy = dx, x, y, precision = 2.5;
function graticule() {
return {
type: "MultiLineString",
coordinates: lines()
};
}
function lines() {
return d3.range(Math.ceil(x0 / dx) * dx, x1, dx).map(x).concat(d3.range(Math.ceil(y0 / dy) * dy, y1, dy).map(y));
}
graticule.lines = function() {
return lines().map(function(coordinates) {
return {
type: "LineString",
coordinates: coordinates
};
});
};
graticule.outline = function() {
return {
type: "Polygon",
coordinates: [ x(x0).concat(y(y1).slice(1), x(x1).reverse().slice(1), y(y0).reverse().slice(1)) ]
};
};
graticule.extent = function(_) {
if (!arguments.length) return [ [ x0, y0 ], [ x1, y1 ] ];
x0 = +_[0][0], x1 = +_[1][0];
y0 = +_[0][1], y1 = +_[1][1];
if (x0 > x1) _ = x0, x0 = x1, x1 = _;
if (y0 > y1) _ = y0, y0 = y1, y1 = _;
return graticule.precision(precision);
};
graticule.step = function(_) {
if (!arguments.length) return [ dx, dy ];
dx = +_[0], dy = +_[1];
return graticule;
};
graticule.precision = function(_) {
if (!arguments.length) return precision;
precision = +_;
x = d3_geo_graticuleX(y0, y1, precision);
y = d3_geo_graticuleY(x0, x1, precision);
return graticule;
};
return graticule.extent([ [ -180 + ε, -90 + ε ], [ 180 - ε, 90 - ε ] ]);
};
function d3_geo_graticuleX(y0, y1, dy) {
var y = d3.range(y0, y1 - ε, dy).concat(y1);
return function(x) {
return y.map(function(y) {
return [ x, y ];
});
};
}
function d3_geo_graticuleY(x0, x1, dx) {
var x = d3.range(x0, x1 - ε, dx).concat(x1);
return function(y) {
return x.map(function(x) {
return [ x, y ];
});
};
}
function d3_geo_haversin(x) {
return (x = Math.sin(x / 2)) * x;
}
d3.geo.interpolate = function(source, target) {
return d3_geo_interpolate(source[0] * d3_radians, source[1] * d3_radians, target[0] * d3_radians, target[1] * d3_radians);
};
function d3_geo_interpolate(x0, y0, x1, y1) {
var cy0 = Math.cos(y0), sy0 = Math.sin(y0), cy1 = Math.cos(y1), sy1 = Math.sin(y1), kx0 = cy0 * Math.cos(x0), ky0 = cy0 * Math.sin(x0), kx1 = cy1 * Math.cos(x1), ky1 = cy1 * Math.sin(x1), d = 2 * Math.asin(Math.sqrt(d3_geo_haversin(y1 - y0) + cy0 * cy1 * d3_geo_haversin(x1 - x0))), k = 1 / Math.sin(d);
var interpolate = d ? function(t) {
var B = Math.sin(t *= d) * k, A = Math.sin(d - t) * k, x = A * kx0 + B * kx1, y = A * ky0 + B * ky1, z = A * sy0 + B * sy1;
return [ Math.atan2(y, x) * d3_degrees, Math.atan2(z, Math.sqrt(x * x + y * y)) * d3_degrees ];
} : function() {
return [ x0 * d3_degrees, y0 * d3_degrees ];
};
interpolate.distance = d;
return interpolate;
}
d3.geo.greatArc = function() {
var source = d3_source, source_, target = d3_target, target_, precision = 6 * d3_radians, interpolate;
function greatArc() {
var p0 = source_ || source.apply(this, arguments), p1 = target_ || target.apply(this, arguments), i = interpolate || d3.geo.interpolate(p0, p1), t = 0, dt = precision / i.distance, coordinates = [ p0 ];
while ((t += dt) < 1) coordinates.push(i(t));
coordinates.push(p1);
return {
type: "LineString",
coordinates: coordinates
};
}
greatArc.distance = function() {
return (interpolate || d3.geo.interpolate(source_ || source.apply(this, arguments), target_ || target.apply(this, arguments))).distance;
};
greatArc.source = function(_) {
if (!arguments.length) return source;
source = _, source_ = typeof _ === "function" ? null : _;
interpolate = source_ && target_ ? d3.geo.interpolate(source_, target_) : null;
return greatArc;
};
greatArc.target = function(_) {
if (!arguments.length) return target;
target = _, target_ = typeof _ === "function" ? null : _;
interpolate = source_ && target_ ? d3.geo.interpolate(source_, target_) : null;
return greatArc;
};
greatArc.precision = function(_) {
if (!arguments.length) return precision / d3_radians;
precision = _ * d3_radians;
return greatArc;
};
return greatArc;
};
function d3_geo_mercator(λ, φ) {
return [ λ / (2 * π), Math.max(-.5, Math.min(+.5, Math.log(Math.tan(π / 4 + φ / 2)) / (2 * π))) ];
}
d3_geo_mercator.invert = function(x, y) {
return [ 2 * π * x, 2 * Math.atan(Math.exp(2 * π * y)) - π / 2 ];
};
(d3.geo.mercator = function() {
return d3_geo_projection(d3_geo_mercator).scale(500);
}).raw = d3_geo_mercator;
var d3_geo_orthographic = d3_geo_azimuthal(function() {
return 1;
}, Math.asin);
(d3.geo.orthographic = function() {
return d3_geo_projection(d3_geo_orthographic);
}).raw = d3_geo_orthographic;
d3.geo.path = function() {
var pointRadius = 4.5, projection, context, projectStream, contextStream;
function path(object) {
if (object) d3.geo.stream(object, projectStream(contextStream.pointRadius(typeof pointRadius === "function" ? +pointRadius.apply(this, arguments) : pointRadius)));
return contextStream.result();
}
path.area = function(object) {
d3_geo_pathAreaSum = 0;
d3.geo.stream(object, projectStream(d3_geo_pathArea));
return d3_geo_pathAreaSum;
};
path.centroid = function(object) {
d3_geo_centroidDimension = d3_geo_centroidX = d3_geo_centroidY = d3_geo_centroidZ = 0;
d3.geo.stream(object, projectStream(d3_geo_pathCentroid));
return d3_geo_centroidZ ? [ d3_geo_centroidX / d3_geo_centroidZ, d3_geo_centroidY / d3_geo_centroidZ ] : undefined;
};
path.bounds = function(object) {
return d3_geo_bounds(projectStream)(object);
};
path.projection = function(_) {
if (!arguments.length) return projection;
projectStream = (projection = _) ? _.stream || d3_geo_pathProjectStream(_) : d3_identity;
return path;
};
path.context = function(_) {
if (!arguments.length) return context;
contextStream = (context = _) == null ? new d3_geo_pathBuffer() : new d3_geo_pathContext(_);
return path;
};
path.pointRadius = function(_) {
if (!arguments.length) return pointRadius;
pointRadius = typeof _ === "function" ? _ : +_;
return path;
};
return path.projection(d3.geo.albersUsa()).context(null);
};
function d3_geo_pathCircle(radius) {
return "m0," + radius + "a" + radius + "," + radius + " 0 1,1 0," + -2 * radius + "a" + radius + "," + radius + " 0 1,1 0," + +2 * radius + "z";
}
function d3_geo_pathProjectStream(project) {
var resample = d3_geo_resample(function(λ, φ) {
return project([ λ * d3_degrees, φ * d3_degrees ]);
});
return function(stream) {
stream = resample(stream);
return {
point: function(λ, φ) {
stream.point(λ * d3_radians, φ * d3_radians);
},
sphere: function() {
stream.sphere();
},
lineStart: function() {
stream.lineStart();
},
lineEnd: function() {
stream.lineEnd();
},
polygonStart: function() {
stream.polygonStart();
},
polygonEnd: function() {
stream.polygonEnd();
}
};
};
}
function d3_geo_pathBuffer() {
var pointCircle = d3_geo_pathCircle(4.5), buffer = [];
var stream = {
point: point,
lineStart: function() {
stream.point = pointLineStart;
},
lineEnd: lineEnd,
polygonStart: function() {
stream.lineEnd = lineEndPolygon;
},
polygonEnd: function() {
stream.lineEnd = lineEnd;
stream.point = point;
},
pointRadius: function(_) {
pointCircle = d3_geo_pathCircle(_);
return stream;
},
result: function() {
if (buffer.length) {
var result = buffer.join("");
buffer = [];
return result;
}
}
};
function point(x, y) {
buffer.push("M", x, ",", y, pointCircle);
}
function pointLineStart(x, y) {
buffer.push("M", x, ",", y);
stream.point = pointLine;
}
function pointLine(x, y) {
buffer.push("L", x, ",", y);
}
function lineEnd() {
stream.point = point;
}
function lineEndPolygon() {
buffer.push("Z");
}
return stream;
}
function d3_geo_pathContext(context) {
var pointRadius = 4.5;
var stream = {
point: point,
lineStart: function() {
stream.point = pointLineStart;
},
lineEnd: lineEnd,
polygonStart: function() {
stream.lineEnd = lineEndPolygon;
},
polygonEnd: function() {
stream.lineEnd = lineEnd;
stream.point = point;
},
pointRadius: function(_) {
pointRadius = _;
return stream;
},
result: d3_noop
};
function point(x, y) {
context.moveTo(x, y);
context.arc(x, y, pointRadius, 0, 2 * π);
}
function pointLineStart(x, y) {
context.moveTo(x, y);
stream.point = pointLine;
}
function pointLine(x, y) {
context.lineTo(x, y);
}
function lineEnd() {
stream.point = point;
}
function lineEndPolygon() {
context.closePath();
}
return stream;
}
var d3_geo_pathAreaSum, d3_geo_pathAreaPolygon, d3_geo_pathArea = {
point: d3_noop,
lineStart: d3_noop,
lineEnd: d3_noop,
polygonStart: function() {
d3_geo_pathAreaPolygon = 0;
d3_geo_pathArea.lineStart = d3_geo_pathAreaRingStart;
},
polygonEnd: function() {
d3_geo_pathArea.lineStart = d3_geo_pathArea.lineEnd = d3_geo_pathArea.point = d3_noop;
d3_geo_pathAreaSum += Math.abs(d3_geo_pathAreaPolygon / 2);
}
};
function d3_geo_pathAreaRingStart() {
var x00, y00, x0, y0;
d3_geo_pathArea.point = function(x, y) {
d3_geo_pathArea.point = nextPoint;
x00 = x0 = x, y00 = y0 = y;
};
function nextPoint(x, y) {
d3_geo_pathAreaPolygon += y0 * x - x0 * y;
x0 = x, y0 = y;
}
d3_geo_pathArea.lineEnd = function() {
nextPoint(x00, y00);
};
}
var d3_geo_pathCentroid = {
point: d3_geo_pathCentroidPoint,
lineStart: d3_geo_pathCentroidLineStart,
lineEnd: d3_geo_pathCentroidLineEnd,
polygonStart: function() {
d3_geo_pathCentroid.lineStart = d3_geo_pathCentroidRingStart;
},
polygonEnd: function() {
d3_geo_pathCentroid.point = d3_geo_pathCentroidPoint;
d3_geo_pathCentroid.lineStart = d3_geo_pathCentroidLineStart;
d3_geo_pathCentroid.lineEnd = d3_geo_pathCentroidLineEnd;
}
};
function d3_geo_pathCentroidPoint(x, y) {
if (d3_geo_centroidDimension) return;
d3_geo_centroidX += x;
d3_geo_centroidY += y;
++d3_geo_centroidZ;
}
function d3_geo_pathCentroidLineStart() {
var x0, y0;
if (d3_geo_centroidDimension !== 1) {
if (d3_geo_centroidDimension < 1) {
d3_geo_centroidDimension = 1;
d3_geo_centroidX = d3_geo_centroidY = d3_geo_centroidZ = 0;
} else return;
}
d3_geo_pathCentroid.point = function(x, y) {
d3_geo_pathCentroid.point = nextPoint;
x0 = x, y0 = y;
};
function nextPoint(x, y) {
var dx = x - x0, dy = y - y0, z = Math.sqrt(dx * dx + dy * dy);
d3_geo_centroidX += z * (x0 + x) / 2;
d3_geo_centroidY += z * (y0 + y) / 2;
d3_geo_centroidZ += z;
x0 = x, y0 = y;
}
}
function d3_geo_pathCentroidLineEnd() {
d3_geo_pathCentroid.point = d3_geo_pathCentroidPoint;
}
function d3_geo_pathCentroidRingStart() {
var x00, y00, x0, y0;
if (d3_geo_centroidDimension < 2) {
d3_geo_centroidDimension = 2;
d3_geo_centroidX = d3_geo_centroidY = d3_geo_centroidZ = 0;
}
d3_geo_pathCentroid.point = function(x, y) {
d3_geo_pathCentroid.point = nextPoint;
x00 = x0 = x, y00 = y0 = y;
};
function nextPoint(x, y) {
var z = y0 * x - x0 * y;
d3_geo_centroidX += z * (x0 + x);
d3_geo_centroidY += z * (y0 + y);
d3_geo_centroidZ += z * 3;
x0 = x, y0 = y;
}
d3_geo_pathCentroid.lineEnd = function() {
nextPoint(x00, y00);
};
}
d3.geo.area = function(object) {
d3_geo_areaSum = 0;
d3.geo.stream(object, d3_geo_area);
return d3_geo_areaSum;
};
var d3_geo_areaSum, d3_geo_areaRingU, d3_geo_areaRingV;
var d3_geo_area = {
sphere: function() {
d3_geo_areaSum += 4 * π;
},
point: d3_noop,
lineStart: d3_noop,
lineEnd: d3_noop,
polygonStart: function() {
d3_geo_areaRingU = 1, d3_geo_areaRingV = 0;
d3_geo_area.lineStart = d3_geo_areaRingStart;
},
polygonEnd: function() {
var area = 2 * Math.atan2(d3_geo_areaRingV, d3_geo_areaRingU);
d3_geo_areaSum += area < 0 ? 4 * π + area : area;
d3_geo_area.lineStart = d3_geo_area.lineEnd = d3_geo_area.point = d3_noop;
}
};
function d3_geo_areaRingStart() {
var λ00, φ00, λ0, cosφ0, sinφ0;
d3_geo_area.point = function(λ, φ) {
d3_geo_area.point = nextPoint;
λ0 = (λ00 = λ) * d3_radians, cosφ0 = Math.cos(φ = (φ00 = φ) * d3_radians / 2 + π / 4),
sinφ0 = Math.sin(φ);
};
function nextPoint(λ, φ) {
λ *= d3_radians;
φ = φ * d3_radians / 2 + π / 4;
var dλ = λ - λ0, cosφ = Math.cos(φ), sinφ = Math.sin(φ), k = sinφ0 * sinφ, u0 = d3_geo_areaRingU, v0 = d3_geo_areaRingV, u = cosφ0 * cosφ + k * Math.cos(dλ), v = k * Math.sin(dλ);
d3_geo_areaRingU = u0 * u - v0 * v;
d3_geo_areaRingV = v0 * u + u0 * v;
λ0 = λ, cosφ0 = cosφ, sinφ0 = sinφ;
}
d3_geo_area.lineEnd = function() {
nextPoint(λ00, φ00);
};
}
d3.geo.projection = d3_geo_projection;
d3.geo.projectionMutator = d3_geo_projectionMutator;
function d3_geo_projection(project) {
return d3_geo_projectionMutator(function() {
return project;
})();
}
function d3_geo_projectionMutator(projectAt) {
var project, rotate, projectRotate, projectResample = d3_geo_resample(function(x, y) {
x = project(x, y);
return [ x[0] * k + δx, δy - x[1] * k ];
}), k = 150, x = 480, y = 250, λ = 0, φ = 0, δλ = 0, δφ = 0, δγ = 0, δx, δy, clip = d3_geo_clipAntimeridian, clipAngle = null;
function projection(point) {
point = projectRotate(point[0] * d3_radians, point[1] * d3_radians);
return [ point[0] * k + δx, δy - point[1] * k ];
}
function invert(point) {
point = projectRotate.invert((point[0] - δx) / k, (δy - point[1]) / k);
return point && [ point[0] * d3_degrees, point[1] * d3_degrees ];
}
projection.stream = function(stream) {
return d3_geo_projectionRadiansRotate(rotate, clip(projectResample(stream)));
};
projection.clipAngle = function(_) {
if (!arguments.length) return clipAngle;
clip = _ == null ? (clipAngle = _, d3_geo_clipAntimeridian) : d3_geo_clipCircle(clipAngle = +_);
return projection;
};
projection.scale = function(_) {
if (!arguments.length) return k;
k = +_;
return reset();
};
projection.translate = function(_) {
if (!arguments.length) return [ x, y ];
x = +_[0];
y = +_[1];
return reset();
};
projection.center = function(_) {
if (!arguments.length) return [ λ * d3_degrees, φ * d3_degrees ];
λ = _[0] % 360 * d3_radians;
φ = _[1] % 360 * d3_radians;
return reset();
};
projection.rotate = function(_) {
if (!arguments.length) return [ δλ * d3_degrees, δφ * d3_degrees, δγ * d3_degrees ];
δλ = _[0] % 360 * d3_radians;
δφ = _[1] % 360 * d3_radians;
δγ = _.length > 2 ? _[2] % 360 * d3_radians : 0;
return reset();
};
d3.rebind(projection, projectResample, "precision");
function reset() {
projectRotate = d3_geo_compose(rotate = d3_geo_rotation(δλ, δφ, δγ), project);
var center = project(λ, φ);
δx = x - center[0] * k;
δy = y + center[1] * k;
return projection;
}
return function() {
project = projectAt.apply(this, arguments);
projection.invert = project.invert && invert;
return reset();
};
}
function d3_geo_projectionRadiansRotate(rotate, stream) {
return {
point: function(x, y) {
y = rotate(x * d3_radians, y * d3_radians), x = y[0];
stream.point(x > π ? x - 2 * π : x < -π ? x + 2 * π : x, y[1]);
},
sphere: function() {
stream.sphere();
},
lineStart: function() {
stream.lineStart();
},
lineEnd: function() {
stream.lineEnd();
},
polygonStart: function() {
stream.polygonStart();
},
polygonEnd: function() {
stream.polygonEnd();
}
};
}
function d3_geo_rotation(δλ, δφ, δγ) {
return δλ ? δφ || δγ ? d3_geo_compose(d3_geo_rotationλ(δλ), d3_geo_rotationφγ(δφ, δγ)) : d3_geo_rotationλ(δλ) : δφ || δγ ? d3_geo_rotationφγ(δφ, δγ) : d3_geo_equirectangular;
}
function d3_geo_forwardRotationλ(δλ) {
return function(λ, φ) {
return λ += δλ, [ λ > π ? λ - 2 * π : λ < -π ? λ + 2 * π : λ, φ ];
};
}
function d3_geo_rotationλ(δλ) {
var rotation = d3_geo_forwardRotationλ(δλ);
rotation.invert = d3_geo_forwardRotationλ(-δλ);
return rotation;
}
function d3_geo_rotationφγ(δφ, δγ) {
var cosδφ = Math.cos(δφ), sinδφ = Math.sin(δφ), cosδγ = Math.cos(δγ), sinδγ = Math.sin(δγ);
function rotation(λ, φ) {
var cosφ = Math.cos(φ), x = Math.cos(λ) * cosφ, y = Math.sin(λ) * cosφ, z = Math.sin(φ), k = z * cosδφ + x * sinδφ;
return [ Math.atan2(y * cosδγ - k * sinδγ, x * cosδφ - z * sinδφ), Math.asin(Math.max(-1, Math.min(1, k * cosδγ + y * sinδγ))) ];
}
rotation.invert = function(λ, φ) {
var cosφ = Math.cos(φ), x = Math.cos(λ) * cosφ, y = Math.sin(λ) * cosφ, z = Math.sin(φ), k = z * cosδγ - y * sinδγ;
return [ Math.atan2(y * cosδγ + z * sinδγ, x * cosδφ + k * sinδφ), Math.asin(Math.max(-1, Math.min(1, k * cosδφ - x * sinδφ))) ];
};
return rotation;
}
var d3_geo_stereographic = d3_geo_azimuthal(function(cosλcosφ) {
return 1 / (1 + cosλcosφ);
}, function(ρ) {
return 2 * Math.atan(ρ);
});
(d3.geo.stereographic = function() {
return d3_geo_projection(d3_geo_stereographic);
}).raw = d3_geo_stereographic;
function d3_geo_azimuthal(scale, angle) {
function azimuthal(λ, φ) {
var cosλ = Math.cos(λ), cosφ = Math.cos(φ), k = scale(cosλ * cosφ);
return [ k * cosφ * Math.sin(λ), k * Math.sin(φ) ];
}
azimuthal.invert = function(x, y) {
var ρ = Math.sqrt(x * x + y * y), c = angle(ρ), sinc = Math.sin(c), cosc = Math.cos(c);
return [ Math.atan2(x * sinc, ρ * cosc), Math.asin(ρ && y * sinc / ρ) ];
};
return azimuthal;
}
d3.geom = {};
d3.geom.hull = function(vertices) {
if (vertices.length < 3) return [];
var len = vertices.length, plen = len - 1, points = [], stack = [], i, j, h = 0, x1, y1, x2, y2, u, v, a, sp;
for (i = 1; i < len; ++i) {
if (vertices[i][1] < vertices[h][1]) {
h = i;
} else if (vertices[i][1] == vertices[h][1]) {
h = vertices[i][0] < vertices[h][0] ? i : h;
}
}
for (i = 0; i < len; ++i) {
if (i === h) continue;
y1 = vertices[i][1] - vertices[h][1];
x1 = vertices[i][0] - vertices[h][0];
points.push({
angle: Math.atan2(y1, x1),
index: i
});
}
points.sort(function(a, b) {
return a.angle - b.angle;
});
a = points[0].angle;
v = points[0].index;
u = 0;
for (i = 1; i < plen; ++i) {
j = points[i].index;
if (a == points[i].angle) {
x1 = vertices[v][0] - vertices[h][0];
y1 = vertices[v][1] - vertices[h][1];
x2 = vertices[j][0] - vertices[h][0];
y2 = vertices[j][1] - vertices[h][1];
if (x1 * x1 + y1 * y1 >= x2 * x2 + y2 * y2) {
points[i].index = -1;
} else {
points[u].index = -1;
a = points[i].angle;
u = i;
v = j;
}
} else {
a = points[i].angle;
u = i;
v = j;
}
}
stack.push(h);
for (i = 0, j = 0; i < 2; ++j) {
if (points[j].index !== -1) {
stack.push(points[j].index);
i++;
}
}
sp = stack.length;
for (;j < plen; ++j) {
if (points[j].index === -1) continue;
while (!d3_geom_hullCCW(stack[sp - 2], stack[sp - 1], points[j].index, vertices)) {
--sp;
}
stack[sp++] = points[j].index;
}
var poly = [];
for (i = 0; i < sp; ++i) {
poly.push(vertices[stack[i]]);
}
return poly;
};
function d3_geom_hullCCW(i1, i2, i3, v) {
var t, a, b, c, d, e, f;
t = v[i1];
a = t[0];
b = t[1];
t = v[i2];
c = t[0];
d = t[1];
t = v[i3];
e = t[0];
f = t[1];
return (f - b) * (c - a) - (d - b) * (e - a) > 0;
}
d3.geom.polygon = function(coordinates) {
coordinates.area = function() {
var i = 0, n = coordinates.length, area = coordinates[n - 1][1] * coordinates[0][0] - coordinates[n - 1][0] * coordinates[0][1];
while (++i < n) {
area += coordinates[i - 1][1] * coordinates[i][0] - coordinates[i - 1][0] * coordinates[i][1];
}
return area * .5;
};
coordinates.centroid = function(k) {
var i = -1, n = coordinates.length, x = 0, y = 0, a, b = coordinates[n - 1], c;
if (!arguments.length) k = -1 / (6 * coordinates.area());
while (++i < n) {
a = b;
b = coordinates[i];
c = a[0] * b[1] - b[0] * a[1];
x += (a[0] + b[0]) * c;
y += (a[1] + b[1]) * c;
}
return [ x * k, y * k ];
};
coordinates.clip = function(subject) {
var input, i = -1, n = coordinates.length, j, m, a = coordinates[n - 1], b, c, d;
while (++i < n) {
input = subject.slice();
subject.length = 0;
b = coordinates[i];
c = input[(m = input.length) - 1];
j = -1;
while (++j < m) {
d = input[j];
if (d3_geom_polygonInside(d, a, b)) {
if (!d3_geom_polygonInside(c, a, b)) {
subject.push(d3_geom_polygonIntersect(c, d, a, b));
}
subject.push(d);
} else if (d3_geom_polygonInside(c, a, b)) {
subject.push(d3_geom_polygonIntersect(c, d, a, b));
}
c = d;
}
a = b;
}
return subject;
};
return coordinates;
};
function d3_geom_polygonInside(p, a, b) {
return (b[0] - a[0]) * (p[1] - a[1]) < (b[1] - a[1]) * (p[0] - a[0]);
}
function d3_geom_polygonIntersect(c, d, a, b) {
var x1 = c[0], x3 = a[0], x21 = d[0] - x1, x43 = b[0] - x3, y1 = c[1], y3 = a[1], y21 = d[1] - y1, y43 = b[1] - y3, ua = (x43 * (y1 - y3) - y43 * (x1 - x3)) / (y43 * x21 - x43 * y21);
return [ x1 + ua * x21, y1 + ua * y21 ];
}
d3.geom.voronoi = function(vertices) {
var polygons = vertices.map(function() {
return [];
}), Z = 1e6;
d3_voronoi_tessellate(vertices, function(e) {
var s1, s2, x1, x2, y1, y2;
if (e.a === 1 && e.b >= 0) {
s1 = e.ep.r;
s2 = e.ep.l;
} else {
s1 = e.ep.l;
s2 = e.ep.r;
}
if (e.a === 1) {
y1 = s1 ? s1.y : -Z;
x1 = e.c - e.b * y1;
y2 = s2 ? s2.y : Z;
x2 = e.c - e.b * y2;
} else {
x1 = s1 ? s1.x : -Z;
y1 = e.c - e.a * x1;
x2 = s2 ? s2.x : Z;
y2 = e.c - e.a * x2;
}
var v1 = [ x1, y1 ], v2 = [ x2, y2 ];
polygons[e.region.l.index].push(v1, v2);
polygons[e.region.r.index].push(v1, v2);
});
polygons = polygons.map(function(polygon, i) {
var cx = vertices[i][0], cy = vertices[i][1], angle = polygon.map(function(v) {
return Math.atan2(v[0] - cx, v[1] - cy);
}), order = d3.range(polygon.length).sort(function(a, b) {
return angle[a] - angle[b];
});
return order.filter(function(d, i) {
return !i || angle[d] - angle[order[i - 1]] > ε;
}).map(function(d) {
return polygon[d];
});
});
polygons.forEach(function(polygon, i) {
var n = polygon.length;
if (!n) return polygon.push([ -Z, -Z ], [ -Z, Z ], [ Z, Z ], [ Z, -Z ]);
if (n > 2) return;
var p0 = vertices[i], p1 = polygon[0], p2 = polygon[1], x0 = p0[0], y0 = p0[1], x1 = p1[0], y1 = p1[1], x2 = p2[0], y2 = p2[1], dx = Math.abs(x2 - x1), dy = y2 - y1;
if (Math.abs(dy) < ε) {
var y = y0 < y1 ? -Z : Z;
polygon.push([ -Z, y ], [ Z, y ]);
} else if (dx < ε) {
var x = x0 < x1 ? -Z : Z;
polygon.push([ x, -Z ], [ x, Z ]);
} else {
var y = (x2 - x1) * (y1 - y0) < (x1 - x0) * (y2 - y1) ? Z : -Z, z = Math.abs(dy) - dx;
if (Math.abs(z) < ε) {
polygon.push([ dy < 0 ? y : -y, y ]);
} else {
if (z > 0) y *= -1;
polygon.push([ -Z, y ], [ Z, y ]);
}
}
});
return polygons;
};
var d3_voronoi_opposite = {
l: "r",
r: "l"
};
function d3_voronoi_tessellate(vertices, callback) {
var Sites = {
list: vertices.map(function(v, i) {
return {
index: i,
x: v[0],
y: v[1]
};
}).sort(function(a, b) {
return a.y < b.y ? -1 : a.y > b.y ? 1 : a.x < b.x ? -1 : a.x > b.x ? 1 : 0;
}),
bottomSite: null
};
var EdgeList = {
list: [],
leftEnd: null,
rightEnd: null,
init: function() {
EdgeList.leftEnd = EdgeList.createHalfEdge(null, "l");
EdgeList.rightEnd = EdgeList.createHalfEdge(null, "l");
EdgeList.leftEnd.r = EdgeList.rightEnd;
EdgeList.rightEnd.l = EdgeList.leftEnd;
EdgeList.list.unshift(EdgeList.leftEnd, EdgeList.rightEnd);
},
createHalfEdge: function(edge, side) {
return {
edge: edge,
side: side,
vertex: null,
l: null,
r: null
};
},
insert: function(lb, he) {
he.l = lb;
he.r = lb.r;
lb.r.l = he;
lb.r = he;
},
leftBound: function(p) {
var he = EdgeList.leftEnd;
do {
he = he.r;
} while (he != EdgeList.rightEnd && Geom.rightOf(he, p));
he = he.l;
return he;
},
del: function(he) {
he.l.r = he.r;
he.r.l = he.l;
he.edge = null;
},
right: function(he) {
return he.r;
},
left: function(he) {
return he.l;
},
leftRegion: function(he) {
return he.edge == null ? Sites.bottomSite : he.edge.region[he.side];
},
rightRegion: function(he) {
return he.edge == null ? Sites.bottomSite : he.edge.region[d3_voronoi_opposite[he.side]];
}
};
var Geom = {
bisect: function(s1, s2) {
var newEdge = {
region: {
l: s1,
r: s2
},
ep: {
l: null,
r: null
}
};
var dx = s2.x - s1.x, dy = s2.y - s1.y, adx = dx > 0 ? dx : -dx, ady = dy > 0 ? dy : -dy;
newEdge.c = s1.x * dx + s1.y * dy + (dx * dx + dy * dy) * .5;
if (adx > ady) {
newEdge.a = 1;
newEdge.b = dy / dx;
newEdge.c /= dx;
} else {
newEdge.b = 1;
newEdge.a = dx / dy;
newEdge.c /= dy;
}
return newEdge;
},
intersect: function(el1, el2) {
var e1 = el1.edge, e2 = el2.edge;
if (!e1 || !e2 || e1.region.r == e2.region.r) {
return null;
}
var d = e1.a * e2.b - e1.b * e2.a;
if (Math.abs(d) < 1e-10) {
return null;
}
var xint = (e1.c * e2.b - e2.c * e1.b) / d, yint = (e2.c * e1.a - e1.c * e2.a) / d, e1r = e1.region.r, e2r = e2.region.r, el, e;
if (e1r.y < e2r.y || e1r.y == e2r.y && e1r.x < e2r.x) {
el = el1;
e = e1;
} else {
el = el2;
e = e2;
}
var rightOfSite = xint >= e.region.r.x;
if (rightOfSite && el.side === "l" || !rightOfSite && el.side === "r") {
return null;
}
return {
x: xint,
y: yint
};
},
rightOf: function(he, p) {
var e = he.edge, topsite = e.region.r, rightOfSite = p.x > topsite.x;
if (rightOfSite && he.side === "l") {
return 1;
}
if (!rightOfSite && he.side === "r") {
return 0;
}
if (e.a === 1) {
var dyp = p.y - topsite.y, dxp = p.x - topsite.x, fast = 0, above = 0;
if (!rightOfSite && e.b < 0 || rightOfSite && e.b >= 0) {
above = fast = dyp >= e.b * dxp;
} else {
above = p.x + p.y * e.b > e.c;
if (e.b < 0) {
above = !above;
}
if (!above) {
fast = 1;
}
}
if (!fast) {
var dxs = topsite.x - e.region.l.x;
above = e.b * (dxp * dxp - dyp * dyp) < dxs * dyp * (1 + 2 * dxp / dxs + e.b * e.b);
if (e.b < 0) {
above = !above;
}
}
} else {
var yl = e.c - e.a * p.x, t1 = p.y - yl, t2 = p.x - topsite.x, t3 = yl - topsite.y;
above = t1 * t1 > t2 * t2 + t3 * t3;
}
return he.side === "l" ? above : !above;
},
endPoint: function(edge, side, site) {
edge.ep[side] = site;
if (!edge.ep[d3_voronoi_opposite[side]]) return;
callback(edge);
},
distance: function(s, t) {
var dx = s.x - t.x, dy = s.y - t.y;
return Math.sqrt(dx * dx + dy * dy);
}
};
var EventQueue = {
list: [],
insert: function(he, site, offset) {
he.vertex = site;
he.ystar = site.y + offset;
for (var i = 0, list = EventQueue.list, l = list.length; i < l; i++) {
var next = list[i];
if (he.ystar > next.ystar || he.ystar == next.ystar && site.x > next.vertex.x) {
continue;
} else {
break;
}
}
list.splice(i, 0, he);
},
del: function(he) {
for (var i = 0, ls = EventQueue.list, l = ls.length; i < l && ls[i] != he; ++i) {}
ls.splice(i, 1);
},
empty: function() {
return EventQueue.list.length === 0;
},
nextEvent: function(he) {
for (var i = 0, ls = EventQueue.list, l = ls.length; i < l; ++i) {
if (ls[i] == he) return ls[i + 1];
}
return null;
},
min: function() {
var elem = EventQueue.list[0];
return {
x: elem.vertex.x,
y: elem.ystar
};
},
extractMin: function() {
return EventQueue.list.shift();
}
};
EdgeList.init();
Sites.bottomSite = Sites.list.shift();
var newSite = Sites.list.shift(), newIntStar;
var lbnd, rbnd, llbnd, rrbnd, bisector;
var bot, top, temp, p, v;
var e, pm;
while (true) {
if (!EventQueue.empty()) {
newIntStar = EventQueue.min();
}
if (newSite && (EventQueue.empty() || newSite.y < newIntStar.y || newSite.y == newIntStar.y && newSite.x < newIntStar.x)) {
lbnd = EdgeList.leftBound(newSite);
rbnd = EdgeList.right(lbnd);
bot = EdgeList.rightRegion(lbnd);
e = Geom.bisect(bot, newSite);
bisector = EdgeList.createHalfEdge(e, "l");
EdgeList.insert(lbnd, bisector);
p = Geom.intersect(lbnd, bisector);
if (p) {
EventQueue.del(lbnd);
EventQueue.insert(lbnd, p, Geom.distance(p, newSite));
}
lbnd = bisector;
bisector = EdgeList.createHalfEdge(e, "r");
EdgeList.insert(lbnd, bisector);
p = Geom.intersect(bisector, rbnd);
if (p) {
EventQueue.insert(bisector, p, Geom.distance(p, newSite));
}
newSite = Sites.list.shift();
} else if (!EventQueue.empty()) {
lbnd = EventQueue.extractMin();
llbnd = EdgeList.left(lbnd);
rbnd = EdgeList.right(lbnd);
rrbnd = EdgeList.right(rbnd);
bot = EdgeList.leftRegion(lbnd);
top = EdgeList.rightRegion(rbnd);
v = lbnd.vertex;
Geom.endPoint(lbnd.edge, lbnd.side, v);
Geom.endPoint(rbnd.edge, rbnd.side, v);
EdgeList.del(lbnd);
EventQueue.del(rbnd);
EdgeList.del(rbnd);
pm = "l";
if (bot.y > top.y) {
temp = bot;
bot = top;
top = temp;
pm = "r";
}
e = Geom.bisect(bot, top);
bisector = EdgeList.createHalfEdge(e, pm);
EdgeList.insert(llbnd, bisector);
Geom.endPoint(e, d3_voronoi_opposite[pm], v);
p = Geom.intersect(llbnd, bisector);
if (p) {
EventQueue.del(llbnd);
EventQueue.insert(llbnd, p, Geom.distance(p, bot));
}
p = Geom.intersect(bisector, rrbnd);
if (p) {
EventQueue.insert(bisector, p, Geom.distance(p, bot));
}
} else {
break;
}
}
for (lbnd = EdgeList.right(EdgeList.leftEnd); lbnd != EdgeList.rightEnd; lbnd = EdgeList.right(lbnd)) {
callback(lbnd.edge);
}
}
d3.geom.delaunay = function(vertices) {
var edges = vertices.map(function() {
return [];
}), triangles = [];
d3_voronoi_tessellate(vertices, function(e) {
edges[e.region.l.index].push(vertices[e.region.r.index]);
});
edges.forEach(function(edge, i) {
var v = vertices[i], cx = v[0], cy = v[1];
edge.forEach(function(v) {
v.angle = Math.atan2(v[0] - cx, v[1] - cy);
});
edge.sort(function(a, b) {
return a.angle - b.angle;
});
for (var j = 0, m = edge.length - 1; j < m; j++) {
triangles.push([ v, edge[j], edge[j + 1] ]);
}
});
return triangles;
};
d3.geom.quadtree = function(points, x1, y1, x2, y2) {
var p, i = -1, n = points.length;
if (arguments.length < 5) {
if (arguments.length === 3) {
y2 = y1;
x2 = x1;
y1 = x1 = 0;
} else {
x1 = y1 = Infinity;
x2 = y2 = -Infinity;
while (++i < n) {
p = points[i];
if (p.x < x1) x1 = p.x;
if (p.y < y1) y1 = p.y;
if (p.x > x2) x2 = p.x;
if (p.y > y2) y2 = p.y;
}
}
}
var dx = x2 - x1, dy = y2 - y1;
if (dx > dy) y2 = y1 + dx; else x2 = x1 + dy;
function insert(n, p, x1, y1, x2, y2) {
if (isNaN(p.x) || isNaN(p.y)) return;
if (n.leaf) {
var v = n.point;
if (v) {
if (Math.abs(v.x - p.x) + Math.abs(v.y - p.y) < .01) {
insertChild(n, p, x1, y1, x2, y2);
} else {
n.point = null;
insertChild(n, v, x1, y1, x2, y2);
insertChild(n, p, x1, y1, x2, y2);
}
} else {
n.point = p;
}
} else {
insertChild(n, p, x1, y1, x2, y2);
}
}
function insertChild(n, p, x1, y1, x2, y2) {
var sx = (x1 + x2) * .5, sy = (y1 + y2) * .5, right = p.x >= sx, bottom = p.y >= sy, i = (bottom << 1) + right;
n.leaf = false;
n = n.nodes[i] || (n.nodes[i] = d3_geom_quadtreeNode());
if (right) x1 = sx; else x2 = sx;
if (bottom) y1 = sy; else y2 = sy;
insert(n, p, x1, y1, x2, y2);
}
var root = d3_geom_quadtreeNode();
root.add = function(p) {
insert(root, p, x1, y1, x2, y2);
};
root.visit = function(f) {
d3_geom_quadtreeVisit(f, root, x1, y1, x2, y2);
};
points.forEach(root.add);
return root;
};
function d3_geom_quadtreeNode() {
return {
leaf: true,
nodes: [],
point: null
};
}
function d3_geom_quadtreeVisit(f, node, x1, y1, x2, y2) {
if (!f(node, x1, y1, x2, y2)) {
var sx = (x1 + x2) * .5, sy = (y1 + y2) * .5, children = node.nodes;
if (children[0]) d3_geom_quadtreeVisit(f, children[0], x1, y1, sx, sy);
if (children[1]) d3_geom_quadtreeVisit(f, children[1], sx, y1, x2, sy);
if (children[2]) d3_geom_quadtreeVisit(f, children[2], x1, sy, sx, y2);
if (children[3]) d3_geom_quadtreeVisit(f, children[3], sx, sy, x2, y2);
}
}
d3.time = {};
var d3_time = Date, d3_time_daySymbols = [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ];
function d3_time_utc() {
this._ = new Date(arguments.length > 1 ? Date.UTC.apply(this, arguments) : arguments[0]);
}
d3_time_utc.prototype = {
getDate: function() {
return this._.getUTCDate();
},
getDay: function() {
return this._.getUTCDay();
},
getFullYear: function() {
return this._.getUTCFullYear();
},
getHours: function() {
return this._.getUTCHours();
},
getMilliseconds: function() {
return this._.getUTCMilliseconds();
},
getMinutes: function() {
return this._.getUTCMinutes();
},
getMonth: function() {
return this._.getUTCMonth();
},
getSeconds: function() {
return this._.getUTCSeconds();
},
getTime: function() {
return this._.getTime();
},
getTimezoneOffset: function() {
return 0;
},
valueOf: function() {
return this._.valueOf();
},
setDate: function() {
d3_time_prototype.setUTCDate.apply(this._, arguments);
},
setDay: function() {
d3_time_prototype.setUTCDay.apply(this._, arguments);
},
setFullYear: function() {
d3_time_prototype.setUTCFullYear.apply(this._, arguments);
},
setHours: function() {
d3_time_prototype.setUTCHours.apply(this._, arguments);
},
setMilliseconds: function() {
d3_time_prototype.setUTCMilliseconds.apply(this._, arguments);
},
setMinutes: function() {
d3_time_prototype.setUTCMinutes.apply(this._, arguments);
},
setMonth: function() {
d3_time_prototype.setUTCMonth.apply(this._, arguments);
},
setSeconds: function() {
d3_time_prototype.setUTCSeconds.apply(this._, arguments);
},
setTime: function() {
d3_time_prototype.setTime.apply(this._, arguments);
}
};
var d3_time_prototype = Date.prototype;
var d3_time_formatDateTime = "%a %b %e %X %Y", d3_time_formatDate = "%m/%d/%Y", d3_time_formatTime = "%H:%M:%S";
var d3_time_days = [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ], d3_time_dayAbbreviations = [ "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" ], d3_time_months = [ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ], d3_time_monthAbbreviations = [ "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" ];
d3.time.format = function(template) {
var n = template.length;
function format(date) {
var string = [], i = -1, j = 0, c, p, f;
while (++i < n) {
if (template.charCodeAt(i) === 37) {
string.push(template.substring(j, i));
if ((p = d3_time_formatPads[c = template.charAt(++i)]) != null) c = template.charAt(++i);
if (f = d3_time_formats[c]) c = f(date, p == null ? c === "e" ? " " : "0" : p);
string.push(c);
j = i + 1;
}
}
string.push(template.substring(j, i));
return string.join("");
}
format.parse = function(string) {
var d = {
y: 1900,
m: 0,
d: 1,
H: 0,
M: 0,
S: 0,
L: 0
}, i = d3_time_parse(d, template, string, 0);
if (i != string.length) return null;
if ("p" in d) d.H = d.H % 12 + d.p * 12;
var date = new d3_time();
date.setFullYear(d.y, d.m, d.d);
date.setHours(d.H, d.M, d.S, d.L);
return date;
};
format.toString = function() {
return template;
};
return format;
};
function d3_time_parse(date, template, string, j) {
var c, p, i = 0, n = template.length, m = string.length;
while (i < n) {
if (j >= m) return -1;
c = template.charCodeAt(i++);
if (c === 37) {
p = d3_time_parsers[template.charAt(i++)];
if (!p || (j = p(date, string, j)) < 0) return -1;
} else if (c != string.charCodeAt(j++)) {
return -1;
}
}
return j;
}
function d3_time_formatRe(names) {
return new RegExp("^(?:" + names.map(d3.requote).join("|") + ")", "i");
}
function d3_time_formatLookup(names) {
var map = new d3_Map(), i = -1, n = names.length;
while (++i < n) map.set(names[i].toLowerCase(), i);
return map;
}
function d3_time_formatPad(value, fill, width) {
value += "";
var length = value.length;
return length < width ? new Array(width - length + 1).join(fill) + value : value;
}
var d3_time_dayRe = d3_time_formatRe(d3_time_days), d3_time_dayAbbrevRe = d3_time_formatRe(d3_time_dayAbbreviations), d3_time_monthRe = d3_time_formatRe(d3_time_months), d3_time_monthLookup = d3_time_formatLookup(d3_time_months), d3_time_monthAbbrevRe = d3_time_formatRe(d3_time_monthAbbreviations), d3_time_monthAbbrevLookup = d3_time_formatLookup(d3_time_monthAbbreviations);
var d3_time_formatPads = {
"-": "",
_: " ",
"0": "0"
};
var d3_time_formats = {
a: function(d) {
return d3_time_dayAbbreviations[d.getDay()];
},
A: function(d) {
return d3_time_days[d.getDay()];
},
b: function(d) {
return d3_time_monthAbbreviations[d.getMonth()];
},
B: function(d) {
return d3_time_months[d.getMonth()];
},
c: d3.time.format(d3_time_formatDateTime),
d: function(d, p) {
return d3_time_formatPad(d.getDate(), p, 2);
},
e: function(d, p) {
return d3_time_formatPad(d.getDate(), p, 2);
},
H: function(d, p) {
return d3_time_formatPad(d.getHours(), p, 2);
},
I: function(d, p) {
return d3_time_formatPad(d.getHours() % 12 || 12, p, 2);
},
j: function(d, p) {
return d3_time_formatPad(1 + d3.time.dayOfYear(d), p, 3);
},
L: function(d, p) {
return d3_time_formatPad(d.getMilliseconds(), p, 3);
},
m: function(d, p) {
return d3_time_formatPad(d.getMonth() + 1, p, 2);
},
M: function(d, p) {
return d3_time_formatPad(d.getMinutes(), p, 2);
},
p: function(d) {
return d.getHours() >= 12 ? "PM" : "AM";
},
S: function(d, p) {
return d3_time_formatPad(d.getSeconds(), p, 2);
},
U: function(d, p) {
return d3_time_formatPad(d3.time.sundayOfYear(d), p, 2);
},
w: function(d) {
return d.getDay();
},
W: function(d, p) {
return d3_time_formatPad(d3.time.mondayOfYear(d), p, 2);
},
x: d3.time.format(d3_time_formatDate),
X: d3.time.format(d3_time_formatTime),
y: function(d, p) {
return d3_time_formatPad(d.getFullYear() % 100, p, 2);
},
Y: function(d, p) {
return d3_time_formatPad(d.getFullYear() % 1e4, p, 4);
},
Z: d3_time_zone,
"%": function() {
return "%";
}
};
var d3_time_parsers = {
a: d3_time_parseWeekdayAbbrev,
A: d3_time_parseWeekday,
b: d3_time_parseMonthAbbrev,
B: d3_time_parseMonth,
c: d3_time_parseLocaleFull,
d: d3_time_parseDay,
e: d3_time_parseDay,
H: d3_time_parseHour24,
I: d3_time_parseHour24,
L: d3_time_parseMilliseconds,
m: d3_time_parseMonthNumber,
M: d3_time_parseMinutes,
p: d3_time_parseAmPm,
S: d3_time_parseSeconds,
x: d3_time_parseLocaleDate,
X: d3_time_parseLocaleTime,
y: d3_time_parseYear,
Y: d3_time_parseFullYear
};
function d3_time_parseWeekdayAbbrev(date, string, i) {
d3_time_dayAbbrevRe.lastIndex = 0;
var n = d3_time_dayAbbrevRe.exec(string.substring(i));
return n ? i += n[0].length : -1;
}
function d3_time_parseWeekday(date, string, i) {
d3_time_dayRe.lastIndex = 0;
var n = d3_time_dayRe.exec(string.substring(i));
return n ? i += n[0].length : -1;
}
function d3_time_parseMonthAbbrev(date, string, i) {
d3_time_monthAbbrevRe.lastIndex = 0;
var n = d3_time_monthAbbrevRe.exec(string.substring(i));
return n ? (date.m = d3_time_monthAbbrevLookup.get(n[0].toLowerCase()), i += n[0].length) : -1;
}
function d3_time_parseMonth(date, string, i) {
d3_time_monthRe.lastIndex = 0;
var n = d3_time_monthRe.exec(string.substring(i));
return n ? (date.m = d3_time_monthLookup.get(n[0].toLowerCase()), i += n[0].length) : -1;
}
function d3_time_parseLocaleFull(date, string, i) {
return d3_time_parse(date, d3_time_formats.c.toString(), string, i);
}
function d3_time_parseLocaleDate(date, string, i) {
return d3_time_parse(date, d3_time_formats.x.toString(), string, i);
}
function d3_time_parseLocaleTime(date, string, i) {
return d3_time_parse(date, d3_time_formats.X.toString(), string, i);
}
function d3_time_parseFullYear(date, string, i) {
d3_time_numberRe.lastIndex = 0;
var n = d3_time_numberRe.exec(string.substring(i, i + 4));
return n ? (date.y = +n[0], i += n[0].length) : -1;
}
function d3_time_parseYear(date, string, i) {
d3_time_numberRe.lastIndex = 0;
var n = d3_time_numberRe.exec(string.substring(i, i + 2));
return n ? (date.y = d3_time_expandYear(+n[0]), i += n[0].length) : -1;
}
function d3_time_expandYear(d) {
return d + (d > 68 ? 1900 : 2e3);
}
function d3_time_parseMonthNumber(date, string, i) {
d3_time_numberRe.lastIndex = 0;
var n = d3_time_numberRe.exec(string.substring(i, i + 2));
return n ? (date.m = n[0] - 1, i += n[0].length) : -1;
}
function d3_time_parseDay(date, string, i) {
d3_time_numberRe.lastIndex = 0;
var n = d3_time_numberRe.exec(string.substring(i, i + 2));
return n ? (date.d = +n[0], i += n[0].length) : -1;
}
function d3_time_parseHour24(date, string, i) {
d3_time_numberRe.lastIndex = 0;
var n = d3_time_numberRe.exec(string.substring(i, i + 2));
return n ? (date.H = +n[0], i += n[0].length) : -1;
}
function d3_time_parseMinutes(date, string, i) {
d3_time_numberRe.lastIndex = 0;
var n = d3_time_numberRe.exec(string.substring(i, i + 2));
return n ? (date.M = +n[0], i += n[0].length) : -1;
}
function d3_time_parseSeconds(date, string, i) {
d3_time_numberRe.lastIndex = 0;
var n = d3_time_numberRe.exec(string.substring(i, i + 2));
return n ? (date.S = +n[0], i += n[0].length) : -1;
}
function d3_time_parseMilliseconds(date, string, i) {
d3_time_numberRe.lastIndex = 0;
var n = d3_time_numberRe.exec(string.substring(i, i + 3));
return n ? (date.L = +n[0], i += n[0].length) : -1;
}
var d3_time_numberRe = /^\s*\d+/;
function d3_time_parseAmPm(date, string, i) {
var n = d3_time_amPmLookup.get(string.substring(i, i += 2).toLowerCase());
return n == null ? -1 : (date.p = n, i);
}
var d3_time_amPmLookup = d3.map({
am: 0,
pm: 1
});
function d3_time_zone(d) {
var z = d.getTimezoneOffset(), zs = z > 0 ? "-" : "+", zh = ~~(Math.abs(z) / 60), zm = Math.abs(z) % 60;
return zs + d3_time_formatPad(zh, "0", 2) + d3_time_formatPad(zm, "0", 2);
}
d3.time.format.utc = function(template) {
var local = d3.time.format(template);
function format(date) {
try {
d3_time = d3_time_utc;
var utc = new d3_time();
utc._ = date;
return local(utc);
} finally {
d3_time = Date;
}
}
format.parse = function(string) {
try {
d3_time = d3_time_utc;
var date = local.parse(string);
return date && date._;
} finally {
d3_time = Date;
}
};
format.toString = local.toString;
return format;
};
var d3_time_formatIso = d3.time.format.utc("%Y-%m-%dT%H:%M:%S.%LZ");
d3.time.format.iso = Date.prototype.toISOString && +new Date("2000-01-01T00:00:00.000Z") ? d3_time_formatIsoNative : d3_time_formatIso;
function d3_time_formatIsoNative(date) {
return date.toISOString();
}
d3_time_formatIsoNative.parse = function(string) {
var date = new Date(string);
return isNaN(date) ? null : date;
};
d3_time_formatIsoNative.toString = d3_time_formatIso.toString;
function d3_time_interval(local, step, number) {
function round(date) {
var d0 = local(date), d1 = offset(d0, 1);
return date - d0 < d1 - date ? d0 : d1;
}
function ceil(date) {
step(date = local(new d3_time(date - 1)), 1);
return date;
}
function offset(date, k) {
step(date = new d3_time(+date), k);
return date;
}
function range(t0, t1, dt) {
var time = ceil(t0), times = [];
if (dt > 1) {
while (time < t1) {
if (!(number(time) % dt)) times.push(new Date(+time));
step(time, 1);
}
} else {
while (time < t1) times.push(new Date(+time)), step(time, 1);
}
return times;
}
function range_utc(t0, t1, dt) {
try {
d3_time = d3_time_utc;
var utc = new d3_time_utc();
utc._ = t0;
return range(utc, t1, dt);
} finally {
d3_time = Date;
}
}
local.floor = local;
local.round = round;
local.ceil = ceil;
local.offset = offset;
local.range = range;
var utc = local.utc = d3_time_interval_utc(local);
utc.floor = utc;
utc.round = d3_time_interval_utc(round);
utc.ceil = d3_time_interval_utc(ceil);
utc.offset = d3_time_interval_utc(offset);
utc.range = range_utc;
return local;
}
function d3_time_interval_utc(method) {
return function(date, k) {
try {
d3_time = d3_time_utc;
var utc = new d3_time_utc();
utc._ = date;
return method(utc, k)._;
} finally {
d3_time = Date;
}
};
}
d3.time.second = d3_time_interval(function(date) {
return new d3_time(Math.floor(date / 1e3) * 1e3);
}, function(date, offset) {
date.setTime(date.getTime() + Math.floor(offset) * 1e3);
}, function(date) {
return date.getSeconds();
});
d3.time.seconds = d3.time.second.range;
d3.time.seconds.utc = d3.time.second.utc.range;
d3.time.minute = d3_time_interval(function(date) {
return new d3_time(Math.floor(date / 6e4) * 6e4);
}, function(date, offset) {
date.setTime(date.getTime() + Math.floor(offset) * 6e4);
}, function(date) {
return date.getMinutes();
});
d3.time.minutes = d3.time.minute.range;
d3.time.minutes.utc = d3.time.minute.utc.range;
d3.time.hour = d3_time_interval(function(date) {
var timezone = date.getTimezoneOffset() / 60;
return new d3_time((Math.floor(date / 36e5 - timezone) + timezone) * 36e5);
}, function(date, offset) {
date.setTime(date.getTime() + Math.floor(offset) * 36e5);
}, function(date) {
return date.getHours();
});
d3.time.hours = d3.time.hour.range;
d3.time.hours.utc = d3.time.hour.utc.range;
d3.time.day = d3_time_interval(function(date) {
var day = new d3_time(1970, 0);
day.setFullYear(date.getFullYear(), date.getMonth(), date.getDate());
return day;
}, function(date, offset) {
date.setDate(date.getDate() + offset);
}, function(date) {
return date.getDate() - 1;
});
d3.time.days = d3.time.day.range;
d3.time.days.utc = d3.time.day.utc.range;
d3.time.dayOfYear = function(date) {
var year = d3.time.year(date);
return Math.floor((date - year - (date.getTimezoneOffset() - year.getTimezoneOffset()) * 6e4) / 864e5);
};
d3_time_daySymbols.forEach(function(day, i) {
day = day.toLowerCase();
i = 7 - i;
var interval = d3.time[day] = d3_time_interval(function(date) {
(date = d3.time.day(date)).setDate(date.getDate() - (date.getDay() + i) % 7);
return date;
}, function(date, offset) {
date.setDate(date.getDate() + Math.floor(offset) * 7);
}, function(date) {
var day = d3.time.year(date).getDay();
return Math.floor((d3.time.dayOfYear(date) + (day + i) % 7) / 7) - (day !== i);
});
d3.time[day + "s"] = interval.range;
d3.time[day + "s"].utc = interval.utc.range;
d3.time[day + "OfYear"] = function(date) {
var day = d3.time.year(date).getDay();
return Math.floor((d3.time.dayOfYear(date) + (day + i) % 7) / 7);
};
});
d3.time.week = d3.time.sunday;
d3.time.weeks = d3.time.sunday.range;
d3.time.weeks.utc = d3.time.sunday.utc.range;
d3.time.weekOfYear = d3.time.sundayOfYear;
d3.time.month = d3_time_interval(function(date) {
date = d3.time.day(date);
date.setDate(1);
return date;
}, function(date, offset) {
date.setMonth(date.getMonth() + offset);
}, function(date) {
return date.getMonth();
});
d3.time.months = d3.time.month.range;
d3.time.months.utc = d3.time.month.utc.range;
d3.time.year = d3_time_interval(function(date) {
date = d3.time.day(date);
date.setMonth(0, 1);
return date;
}, function(date, offset) {
date.setFullYear(date.getFullYear() + offset);
}, function(date) {
return date.getFullYear();
});
d3.time.years = d3.time.year.range;
d3.time.years.utc = d3.time.year.utc.range;
function d3_time_scale(linear, methods, format) {
function scale(x) {
return linear(x);
}
scale.invert = function(x) {
return d3_time_scaleDate(linear.invert(x));
};
scale.domain = function(x) {
if (!arguments.length) return linear.domain().map(d3_time_scaleDate);
linear.domain(x);
return scale;
};
scale.nice = function(m) {
return scale.domain(d3_scale_nice(scale.domain(), function() {
return m;
}));
};
scale.ticks = function(m, k) {
var extent = d3_time_scaleExtent(scale.domain());
if (typeof m !== "function") {
var span = extent[1] - extent[0], target = span / m, i = d3.bisect(d3_time_scaleSteps, target);
if (i == d3_time_scaleSteps.length) return methods.year(extent, m);
if (!i) return linear.ticks(m).map(d3_time_scaleDate);
if (Math.log(target / d3_time_scaleSteps[i - 1]) < Math.log(d3_time_scaleSteps[i] / target)) --i;
m = methods[i];
k = m[1];
m = m[0].range;
}
return m(extent[0], new Date(+extent[1] + 1), k);
};
scale.tickFormat = function() {
return format;
};
scale.copy = function() {
return d3_time_scale(linear.copy(), methods, format);
};
return d3.rebind(scale, linear, "range", "rangeRound", "interpolate", "clamp");
}
function d3_time_scaleExtent(domain) {
var start = domain[0], stop = domain[domain.length - 1];
return start < stop ? [ start, stop ] : [ stop, start ];
}
function d3_time_scaleDate(t) {
return new Date(t);
}
function d3_time_scaleFormat(formats) {
return function(date) {
var i = formats.length - 1, f = formats[i];
while (!f[1](date)) f = formats[--i];
return f[0](date);
};
}
function d3_time_scaleSetYear(y) {
var d = new Date(y, 0, 1);
d.setFullYear(y);
return d;
}
function d3_time_scaleGetYear(d) {
var y = d.getFullYear(), d0 = d3_time_scaleSetYear(y), d1 = d3_time_scaleSetYear(y + 1);
return y + (d - d0) / (d1 - d0);
}
var d3_time_scaleSteps = [ 1e3, 5e3, 15e3, 3e4, 6e4, 3e5, 9e5, 18e5, 36e5, 108e5, 216e5, 432e5, 864e5, 1728e5, 6048e5, 2592e6, 7776e6, 31536e6 ];
var d3_time_scaleLocalMethods = [ [ d3.time.second, 1 ], [ d3.time.second, 5 ], [ d3.time.second, 15 ], [ d3.time.second, 30 ], [ d3.time.minute, 1 ], [ d3.time.minute, 5 ], [ d3.time.minute, 15 ], [ d3.time.minute, 30 ], [ d3.time.hour, 1 ], [ d3.time.hour, 3 ], [ d3.time.hour, 6 ], [ d3.time.hour, 12 ], [ d3.time.day, 1 ], [ d3.time.day, 2 ], [ d3.time.week, 1 ], [ d3.time.month, 1 ], [ d3.time.month, 3 ], [ d3.time.year, 1 ] ];
var d3_time_scaleLocalFormats = [ [ d3.time.format("%Y"), d3_true ], [ d3.time.format("%B"), function(d) {
return d.getMonth();
} ], [ d3.time.format("%b %d"), function(d) {
return d.getDate() != 1;
} ], [ d3.time.format("%a %d"), function(d) {
return d.getDay() && d.getDate() != 1;
} ], [ d3.time.format("%I %p"), function(d) {
return d.getHours();
} ], [ d3.time.format("%I:%M"), function(d) {
return d.getMinutes();
} ], [ d3.time.format(":%S"), function(d) {
return d.getSeconds();
} ], [ d3.time.format(".%L"), function(d) {
return d.getMilliseconds();
} ] ];
var d3_time_scaleLinear = d3.scale.linear(), d3_time_scaleLocalFormat = d3_time_scaleFormat(d3_time_scaleLocalFormats);
d3_time_scaleLocalMethods.year = function(extent, m) {
return d3_time_scaleLinear.domain(extent.map(d3_time_scaleGetYear)).ticks(m).map(d3_time_scaleSetYear);
};
d3.time.scale = function() {
return d3_time_scale(d3.scale.linear(), d3_time_scaleLocalMethods, d3_time_scaleLocalFormat);
};
var d3_time_scaleUTCMethods = d3_time_scaleLocalMethods.map(function(m) {
return [ m[0].utc, m[1] ];
});
var d3_time_scaleUTCFormats = [ [ d3.time.format.utc("%Y"), d3_true ], [ d3.time.format.utc("%B"), function(d) {
return d.getUTCMonth();
} ], [ d3.time.format.utc("%b %d"), function(d) {
return d.getUTCDate() != 1;
} ], [ d3.time.format.utc("%a %d"), function(d) {
return d.getUTCDay() && d.getUTCDate() != 1;
} ], [ d3.time.format.utc("%I %p"), function(d) {
return d.getUTCHours();
} ], [ d3.time.format.utc("%I:%M"), function(d) {
return d.getUTCMinutes();
} ], [ d3.time.format.utc(":%S"), function(d) {
return d.getUTCSeconds();
} ], [ d3.time.format.utc(".%L"), function(d) {
return d.getUTCMilliseconds();
} ] ];
var d3_time_scaleUTCFormat = d3_time_scaleFormat(d3_time_scaleUTCFormats);
function d3_time_scaleUTCSetYear(y) {
var d = new Date(Date.UTC(y, 0, 1));
d.setUTCFullYear(y);
return d;
}
function d3_time_scaleUTCGetYear(d) {
var y = d.getUTCFullYear(), d0 = d3_time_scaleUTCSetYear(y), d1 = d3_time_scaleUTCSetYear(y + 1);
return y + (d - d0) / (d1 - d0);
}
d3_time_scaleUTCMethods.year = function(extent, m) {
return d3_time_scaleLinear.domain(extent.map(d3_time_scaleUTCGetYear)).ticks(m).map(d3_time_scaleUTCSetYear);
};
d3.time.scale.utc = function() {
return d3_time_scale(d3.scale.linear(), d3_time_scaleUTCMethods, d3_time_scaleUTCFormat);
};
return d3;
}();
// ################ questions #################################
var quest = new Array(7);
quest[0] = "Ein Freund erzählt Ihnen, dass seine Tochter ein Kind erwartet. Sie wissen das jedoch schon. Können Sie in dieser Situation sagen: <br> 'Sie hat mir's schon erzählt.'";
quest[1] = "<img src='beten.jpg' width='160'><br>Können Sie zur Beschreibung dieses Bildes folgenden Satz sagen: <br> 'Das Kind ist am beten.'";
quest[2] = "Zufällig kommt ihr Freund Otto vorbei. Er fragt Sie, ob Sie schon mitbekommen haben, dass die Nachbarn sich scheiden lassen. Sie haben davon aber noch nichts gehört. Könnten Sie in dieser Situation folgenden Satz sagen: <br> 'Da weiß ich noch nichts von.'";
quest[3] = "Sie möchten Ausdrücken, dass sie den Lohn ihrer Arbeit mit niemandem teilen möchten. Können Sie in dieser Situation folgenden Satz sagen: <br> 'Das Geld, wo ich verdiene, gehört mir.'";
quest[4] = "Ihre Enkelin hat Sie schon lange nicht mehr besucht. Können Sie sie folgendes fragen: <br> 'Wann kommst du denn mal wieder bei mich?'";
quest[5] = "Ist es für Sie möglich, Frauen mit dem neutralen Geschlecht zu bezeichnen? Stellen Sie sich vor, sie sprechen über ihre Schwester Petra. Können Sie über sie folgenden Satz sagen: <br> 'Es ist 75 Jahre alt.'";
quest[6] = "Sie haben viele antike Sachen, die Sie auf dem Trödelmarkt verkaufen wollen. Leider ist das Wetter schlecht und die Aktion ein echter Reinfall. Wenn Sie Ihrem Nachbarn später davon erzählen, können Sie dann folgenden Satz verwenden: <br> 'Wir haben lange gewartet, aber keines ist gekommen.'";
/*
quest[0] = "mir es: <br>Bsp: 'Sie hat mir es schon gesagt.'";
quest[1] = "ihr es: <br>Bsp: 'Ich habe ihr es schon erzählt.'";
quest[2] = "tut beten: <br>Bsp: 'Das Kind tut beten.'";
quest[3] = "ist am beten: <br>Bsp: 'Das Kind ist am beten.'";
quest[4] = "dadavon: <br>Bsp: 'Dadavon weiß ich noch nichts.'";
quest[5] = "da davon: <br>Bsp: 'Da weiß ich noch nichts davon.'";
quest[6] = "mir ihn: <br>Bsp: 'Er hat mir ihn schon gegeben.'";
quest[7] = "müssen gelesen haben: <br>Bsp: 'Der Lehrer hat uns aufgegeben, dass wir das Buch bis morgen müssen gelesen haben.'";
quest[8] = "gelesen müssen haben: <br>Bsp: 'Der Lehrer hat uns aufgegeben, dass wir das Buch bis morgen gelesen müssen haben.'";
quest[9] = "was: <br>Bsp: 'Das Geld, was ich verdiene, gehört mir.'";
quest[10] = "wo: <br>Bsp: 'Das Geld, wo ich verdiene, gehört mir.'";
quest[11] = "der Monika sein Rad";
quest[12] = "kriegt weggenommen: <br>Bsp: 'Peter kriegt den Teller weggenommen.'";
quest[13] = "nach mir: <br>Bsp: 'Komm mal bitte nach mir.'";
quest[14] = "tun";
*/
/*
quest[0] = "mir es: <br>Bsp: 'Sie hat mir es schon gesagt.'";
quest[1] = "ihr es: <br>Bsp: 'Ich habe ihr es schon erzählt.'";
quest[2] = "kriegt eingeschüttet: <br>Bsp: 'Er kriegt ein Glas Wasser eingeschüttet.'";
quest[3] = "tut beten: <br>Bsp: 'Das Kind tut beten.'";
quest[4] = "ist am beten: <br>Bsp: 'Das Kind ist am beten.'";
quest[5] = "ist beim beten: <br>Bsp: 'Das Kind ist beim beten.'";
quest[6] = "ihm es: <br>Bsp: 'Ich habe ihm es schon gegeben.'";
quest[7] = "dadavon: <br>Bsp: 'Dadavon weiß ich noch nichts.'";
quest[8] = "da davon: <br>Bsp: 'Da weiß ich noch nichts davon.'";
quest[9] = "da von: <br>Bsp: 'Da weiß ich noch nichts von.'";
quest[10] = "mir ihn: <br>Bsp: 'Er hat mir ihn schon gegeben.'";
quest[11] = "müssen gelesen haben: <br>Bsp: 'Der Lehrer hat uns aufgegeben, dass wir das Buch bis morgen müssen gelesen haben.'";
quest[12] = "gelesen müssen haben: <br>Bsp: 'Der Lehrer hat uns aufgegeben, dass wir das Buch bis morgen gelesen müssen haben.'";
quest[13] = "was: <br>Bsp: 'Das Geld, was ich verdiene, gehört mir.'";
quest[14] = "wo: <br>Bsp: 'Das Geld, wo ich verdiene, gehört mir.'";
quest[15] = "das wo: <br>Bsp: 'Das Geld, das wo ich verdiene, gehört mir.'";
quest[16] = "dem Monika ihr Rad";
quest[17] = "der Monika sein Rad";
quest[18] = "dem Monika sein Rad";
quest[19] = "kriegt weggenommen: <br>Bsp: 'Peter kriegt den Teller weggenommen.'";
quest[20] = "bei mich: <br>Bsp: 'Komm mal bitte bei mich.'";
quest[21] = "nach mir: <br>Bsp: 'Komm mal bitte nach mir.'";
quest[22] = "es";
quest[23] = "sie";
quest[24] = "das";
quest[25] = "die";
quest[26] = "tun";
quest[27] = "am";
quest[28] = "keines";
*/
var questionNr = 0;
var bermudaTriangleArr = new Array();
// ################## result vector ####################
var resultVector = new Array();
for(var i=0;i<quest.length;i++){
resultVector[i] = 0;
}
// ################## normalized data ###################
var matrixNorm = [
[0.75,0.25,0.25,0.0,0.0,1.0,0.0],
[0.666666666667,0.375,0.333333333333,0.0,0.0714285714286,0.75,0.0],
[0.6,0.4,0.0,0.0,0.0,0.5,0.0],
[0.833333333333,0.4,0.0,0.0,0.375,1.0,0.2],
[1.0,0.571428571429,0.5,0.0,0.0,0.8,0.0],
[0.857142857143,0.428571428571,0.25,0.0,0.0,0.714285714286,0.0],
[1.0,0.0,0.0,0.0,0.0,0.666666666667,0.0],
[0.75,0.25,0.0,0.0,0.0,0.5,0.0],
[1.0,0.0,0.0,0.0,0.142857142857,0.666666666667,0.666666666667],
[1.0,0.2,0.2,0.0,0.0,1.0,0.0],
[0.666666666667,0.0,0.333333333333,0.0,0.0,0.75,0.0],
[0.6,0.333333333333,0.333333333333,0.0,1.0,0.666666666667,0.0],
[0.8,0.0,0.6,0.0,0.0,0.8,0.0],
[0.285714285714,0.0,0.0,0.0,0.142857142857,0.714285714286,0.0],
[0.0,0.5,0.0,0.0,0.0,1.0,0.0],
[0.142857142857,0.0,0.428571428571,0.0,0.0,1.0,0.0],
[0.333333333333,0.0,0.6,0.0,1.0,1.0,0.0],
[0.0,0.25,0.4,0.0,0.25,1.0,0.0],
[1.0,0.25,0.2,0.0,0.4,0.75,0.0],
[0.166666666667,0.142857142857,0.0,0.0,0.75,1.0,0.0],
[0.666666666667,0.333333333333,0.5,0.0,0.8,0.75,0.0],
[1.0,0.0,0.333333333333,0.0,0.0,1.0,0.0],
[0.166666666667,0.0,0.0,0.0,0.0,1.0,0.0],
[0.8,0.0,0.0,0.0,0.75,0.0,0.333333333333],
[0.5,0.0,0.0,0.0,0.666666666667,1.0,0.0],
[1.0,0.0,0.0,0.0,1.0,0.5,0.0],
[0.5,0.0,0.666666666667,0.0,0.8,0.25,0.0],
[0.2,0.0,0.0,0.0,0.777777777778,0.0,0.111111111111],
[0.6,0.0,0.0,0.0,0.75,1.0,0.75],
[0.0,0.0,0.0,0.0,0.666666666667,0.833333333333,0.0],
[0.25,0.0,0.25,0.0,0.857142857143,1.0,0.0],
[0.5,0.0,0.2,0.0,1.0,1.0,0.0],
[0.0,0.0,0.0,0.0,0.666666666667,1.0,0.0],
[0.0,0.0,0.0,0.0,0.0,0.0,0.0],
[0.166666666667,0.0,0.0,0.0,0.333333333333,0.5,0.0],
[0.5,0.0,0.0,0.0,1.0,0.6,0.0],
[0.285714285714,0.0,0.4,0.0,0.0,0.0,0.0],
[0.0,0.0,0.0,0.0,0.666666666667,1.0,0.0],
[0.0,0.0,0.0,0.0,0.0,0.75,0.0],
[0.0,0.0,0.0,0.0,0.0,1.0,0.0],
[0.8,0.0,0.2,0.0,0.0,1.0,0.0],
[0.25,0.0,0.5,0.0,0.0,0.75,0.0],
[0.8,0.0,0.5,0.0,0.0,1.0,0.0],
[0.428571428571,0.0,0.285714285714,0.0,0.0,1.0,0.2],
[1.0,0.0,0.0,0.0,0.666666666667,0.5,0.333333333333],
[1.0,0.0,0.0,0.0,1.0,0.5,0.0],
[1.0,0.0,0.0,0.0,1.0,0.0,0.0],
[1.0,0.0,0.0,0.125,0.75,0.75,0.0],
[0.75,0.0,0.0,0.0,0.5,0.5,0.142857142857],
[0.571428571429,0.166666666667,0.0,0.25,0.833333333333,0.6,0.25],
[1.0,0.25,0.0,0.0,0.714285714286,0.6,0.8],
[1.0,0.0,0.0,0.0,0.0,0.0,0.0],
[1.0,0.142857142857,0.0,0.0,0.25,0.571428571429,0.25],
[1.0,0.0,0.0,0.0,0.25,0.5,0.0],
[0.666666666667,0.0,0.0,0.333333333333,0.0,0.666666666667,0.666666666667],
[0.8,0.0,0.2,0.0,0.4,0.666666666667,0.0],
[0.875,0.0,0.0,0.375,0.0,0.25,0.0],
[0.0,0.6,0.6,0.0,0.0,1.0,0.0],
[0.125,0.5,0.222222222222,0.0,0.0,1.0,0.0],
[0.0,0.2,0.2,0.0,0.0,1.0,0.0],
[0.2,0.8,0.0,0.0,0.0,1.0,0.0],
[0.25,1.0,0.25,0.0,0.0,1.0,0.0],
[0.0,0.2,0.0,0.0,0.0,0.8,0.0],
[0.285714285714,0.0,0.428571428571,0.0,0.0,1.0,0.0],
[0.125,1.0,0.0,0.0,0.0,1.0,0.0],
[0.0,0.333333333333,0.0,0.0,0.0,1.0,0.0],
[0.333333333333,0.5,0.166666666667,0.0,0.0,0.833333333333,0.0],
[0.285714285714,0.375,0.142857142857,0.0,0.0,0.428571428571,0.0],
[0.0,0.125,0.0,0.0,0.0,0.833333333333,0.0],
[0.8,0.4,0.0,0.0,0.0,1.0,0.0],
[0.4,0.666666666667,0.4,0.0,0.0,0.666666666667,0.0],
[0.6,1.0,0.6,0.0,0.0,0.0,0.0],
[0.142857142857,0.833333333333,0.142857142857,0.0,0.0,1.0,0.0],
[0.5,0.75,0.25,0.0,0.0,0.0,0.0],
[0.4,0.2,0.4,0.0,1.0,0.333333333333,0.0],
[0.8,0.0,0.2,0.0,0.666666666667,1.0,0.0],
[1.0,0.0,0.5,0.0,1.0,1.0,0.0],
[0.666666666667,0.0,0.333333333333,0.0,1.0,0.75,0.0],
[1.0,0.0,0.2,0.0,0.714285714286,0.8,0.0],
[1.0,0.0,0.0,0.0,0.714285714286,0.2,0.333333333333],
[0.666666666667,0.0,0.166666666667,0.0,0.125,0.0,0.0],
[1.0,0.0,0.125,0.0,0.0,0.5,0.166666666667],
[0.9,0.0,0.0,0.0,0.0,0.25,0.0],
[1.0,0.0,0.0,0.0,0.0,0.0,0.0],
[1.0,0.0,0.142857142857,0.0,0.5,0.25,0.0],
[0.4,0.0,0.0,0.0,0.0,0.2,0.0],
[1.0,0.0,0.0,0.0,0.0,0.0,0.0],
[0.75,0.0,0.0,0.0,0.0,0.0,0.0],
[1.0,0.0,0.2,0.0,0.0,0.0,0.0],
[1.0,0.0,0.0,0.0,0.0,0.4,0.0],
[0.4,0.0,0.0,0.0,0.0,0.25,0.25],
[0.5,0.5,0.4,0.0,0.833333333333,0.75,0.0],
[0.75,0.5,0.5,0.0,0.666666666667,0.75,0.0],
[0.5,0.166666666667,0.285714285714,0.0,0.714285714286,0.833333333333,0.0],
[1.0,0.5,0.0,0.0,1.0,0.75,0.0],
[0.5,0.6,0.5,0.0,0.6,0.75,0.0],
[1.0,0.0,1.0,0.0,0.428571428571,1.0,0.0],
[0.833333333333,0.0,0.2,0.0,0.888888888889,1.0,0.0],
[0.666666666667,0.0,0.111111111111,0.0,0.75,0.75,0.0],
[1.0,0.0,0.0,0.0,1.0,0.833333333333,1.0],
[0.833333333333,0.2,0.0,0.0,0.4,0.6,0.0],
[1.0,0.0,0.0,0.0,0.25,0.75,0.0],
[0.8,0.0,0.2,0.0,1.0,0.0,0.0],
[0.8,0.0,0.0,0.0,0.6,0.2,0.0],
[1.0,0.0,0.142857142857,0.0,0.6,0.75,0.0],
[1.0,0.0,0.0,0.4,0.75,1.0,0.0],
[1.0,0.0,0.0,0.0,1.0,0.857142857143,0.0],
[1.0,0.714285714286,0.571428571429,0.0,0.0,1.0,0.0],
[1.0,0.333333333333,0.333333333333,0.0,0.0,1.0,0.0],
[0.8,0.4,0.8,0.0,0.0,1.0,0.0],
[1.0,0.2,0.6,0.0,0.0,1.0,0.0],
[0.5,0.0,0.5,0.0,0.0,1.0,0.0],
[0.75,0.333333333333,0.5,0.0,0.0,0.666666666667,0.0],
[0.857142857143,0.0,0.428571428571,0.0,0.25,1.0,0.0],
[1.0,0.0,0.2,0.0,0.0,0.5,0.0],
[0.857142857143,0.0,0.166666666667,0.0,1.0,0.833333333333,0.0],
[0.8,0.0,0.0,0.0,0.5,0.0,0.0],
[0.8,0.0,0.0,0.0,0.4,0.333333333333,0.0],
[1.0,0.0,0.0,0.142857142857,0.0,0.5,0.5],
[0.5,0.0,0.0,0.0,0.0,0.428571428571,0.142857142857],
[1.0,0.0,0.0,0.0,1.0,0.8,0.0],
[0.857142857143,0.0,0.142857142857,0.428571428571,0.285714285714,0.571428571429,0.25],
[0.8,0.0,0.0,0.4,0.4,0.666666666667,0.0],
[0.833333333333,0.0,0.0,0.0,0.6,0.6,0.0],
[1.0,0.0,0.0,0.0,0.714285714286,0.571428571429,0.142857142857],
[0.8,0.0,0.0,0.4,0.666666666667,0.333333333333,0.5],
[1.0,0.0,0.0,0.0,0.5,0.333333333333,0.0],
[0.75,0.0,0.0,0.75,1.0,0.75,0.75],
[0.666666666667,0.0,0.0,0.0,1.0,0.666666666667,0.0],
[0.8,0.0,0.0,0.2,0.75,1.0,1.0],
[0.8,0.0,0.0,0.0,0.285714285714,0.0,0.0],
[0.8,0.2,0.0,0.0,0.5,0.8,0.0],
[0.6,0.0,0.0,0.4,0.666666666667,0.0,0.0],
[0.8,0.0,0.0,0.4,0.75,1.0,0.0],
[0.8,0.0,0.0,0.2,0.857142857143,0.0,0.0],
[0.666666666667,0.0,0.0,0.5,1.0,0.75,0.0],
[0.75,0.0,0.0,0.0,0.0,1.0,0.0],
[1.0,0.0,0.0,0.0,0.5,0.0,0.5],
[0.8,0.0,0.0,0.2,0.0,0.2,0.2],
[0.6,0.0,0.0,0.4,0.666666666667,0.666666666667,0.0],
[0.75,0.0,0.111111111111,0.375,0.285714285714,0.833333333333,0.142857142857],
[0.75,0.0,0.0,0.0,0.0909090909091,0.555555555556,0.444444444444],
[0.6,0.0,0.166666666667,0.0,1.0,1.0,0.666666666667],
[0.857142857143,0.0,0.0,0.428571428571,0.0,0.0,0.0],
[1.0,0.0,0.125,0.0,0.0,0.333333333333,0.333333333333],
[1.0,0.0,0.0,0.2,0.0,0.8,0.0],
[1.0,0.0,0.0,0.6,0.25,0.2,0.0],
[1.0,0.0,0.0,0.5,0.5,0.25,0.5],
[0.6,0.0,0.0,0.5,0.0,0.333333333333,0.0],
[0.833333333333,0.0,0.0,0.333333333333,0.0,1.0,0.75],
[0.666666666667,0.0,0.0,0.333333333333,0.0,0.333333333333,0.0],
[1.0,0.0,0.0,0.4,0.0,0.75,0.333333333333],
[1.0,0.0,0.0,0.2,0.0,0.0,0.142857142857],
[1.0,0.0,0.0,0.4,0.0,0.0,0.333333333333],
[0.8,0.0,0.0,0.6,0.0,0.0,0.166666666667],
[0.8,0.0,0.0,0.6,0.0,0.4,0.0],
[0.6,0.0,0.0,0.166666666667,0.0,0.5,0.166666666667]
];
// ################## location information ##############
var locationinfo = [
[1,'Haine',8.720886,51.041558],
[2,'Frankenau',8.933333,51.1],
[3,'Odershausen',9.107222,51.087778],
[4,'Arnsbach',9.246005,51.054305],
[5,'Ernsthausen',8.733812,50.984576],
[6,'Gilserberg',9.060833,50.951944],
[7,'Spieskappel',9.318611,50.966944],
[8,'Oberaula',9.470833,50.858056],
[9,'Leusel',9.233,50.7591],
[10,'Eifa',9.34606,50.74987],
[11,'Schrecksbach',9.283333,50.833333],
[12,'Raboldshausen',9.5275,50.913333],
[13,'Bracht',8.849167,50.921667],
[14,'Kirchbauna',9.422194,51.245353],
[15,'Sachsenberg',8.788767,51.126803],
[16,'Lohne',9.266597,51.179247],
[17,'Quentel',9.645833,51.199722],
[18,'Söhrewald',9.575278,51.227222],
[19,'Welferode',9.466389,51.030833],
[20,'Bergheim',9.644444,51.107222],
[21,'Solz',9.880278,51.004444],
[22,'Affoldern',9.086389,51.166667],
[23,'Hemfurth',9.053056,51.171944],
[24,'Rohrbach',9.711944,50.913056],
[25,'Mengshausen',9.618056,50.794722],
[26,'Lengers',9.996944,50.864167],
[27,'Bosserode',9.992203,50.951814],
[28,'Ronshausen',9.859722,50.947778],
[29,'Rotensee',9.7425,50.834722],
[30,'Wickenrode',9.729722,51.257222],
[31,'Rossbach',9.811667,51.315],
[32,'Orferode',9.939444,51.257222],
[33,'Velmeden',9.796389,51.213611],
[34,'Altenburschla',10.177833,51.150333],
[35,'Aue',10.126694,51.178689],
[36,'Herleshausen',10.166667,51.016667],
[37,'Röhrda',10.058333,51.1025],
[38,'Hoheneiche',9.972108,51.128686],
[39,'Wilhelmshausen',9.579278,51.403878],
[40,'Ermschwerd',9.817222,51.356389],
[41,'Deisel',9.408611,51.591389],
[42,'Oedelsheim',9.594722,51.591111],
[43,'Gottsbüren',9.499444,51.578889],
[44,'Heisebeck',9.656511,51.586781],
[46,'Michelsrombach',9.662778,50.662778],
[47,'Kirchhasel',9.800833,50.701111],
[48,'Großentaft',9.860339,50.740661],
[49,'Kämmerzell',9.640833,50.600278],
[50,'Hofaschenbach',9.845833,50.636944],
[51,'Simmershausen',10.033889,50.5925],
[52,'Hauswurz',9.475833,50.462778],
[53,'Magdlos',9.514167,50.425833],
[54,'Kerzell',9.670833,50.486389],
[55,'Weyhers',9.8,50.466667],
[56,'Wüstensachsen',10.003056,50.506944],
[57,'Müs',9.504444,50.591111],
[58,'Nordheim',8.389167,49.681667],
[59,'Helmighausen',8.926097,51.472603],
[60,'Rhoden',9.010047,51.475328],
[62,'Ostheim',9.321111,51.506111],
[63,'Rhenegge',8.770556,51.360278],
[64,'Adorf',8.805856,51.361019],
[65,'Wetterburg',9.059153,51.383953],
[66,'Breuna',9.183333,51.416667],
[67,'Schwalefeld',8.63,51.307222],
[68,'Twiste',8.967747,51.336667],
[69,'Meineringhausen',8.944525,51.255086],
[70,'Freienhagen',9.066111,51.279167],
[71,'Istha',9.228503,51.304014],
[72,'Marienhagen',8.911228,51.211469],
[73,'Eppe',8.771464,51.235381],
[74,'Münden',8.747964,51.152439],
[75,'Willingen',8.613889,51.293333],
[76,'Offdilln',8.2302,50.8264],
[77,'Eibach',8.324722,50.7475],
[78,'Niederweidbach',8.485011,50.702022],
[79,'Kölschhausen',8.397778,50.631944],
[80,'Blasbach',8.519167,50.61],
[81,'Kröffelbach',8.473633,50.445647],
[82,'Kirch-Göns',8.653056,50.470833],
[83,'Ruttershausen',8.710678,50.661645],
[84,'Rüddingshausen',8.915497,50.688194],
[85,'Nieder-Gemünden',9.058056,50.694167],
[86,'Albach',8.794483,50.555692],
[87,'Allendorf/Lahn',8.622422,50.551883],
[88,'Göbelnrod',8.922222,50.597778],
[89,'Ulrichstein',9.2,50.583333],
[90,'Merlau',9.026944,50.622778],
[91,'Engelrod',9.262778,50.579722],
[92,'Borsdorf',8.974039,50.430808],
[93,'Herchenhain',9.275,50.483333],
[94,'Langendernbach',8.048333,50.539444],
[95,'Dorndorf',8.0025,50.505],
[96,'Elz',8.033333,50.416667],
[97,'Heckholzhausen',8.157778,50.485],
[98,'Erdbach',8.218611,50.689722],
[99,'Mademühlen',8.163889,50.624722],
[100,'Haintchen',8.316944,50.36],
[101,'Weyer',8.223889,50.3675],
[103,'Wildsachsen',8.361127,50.117486],
[104,'Presberg',7.892561,50.051717],
[105,'Stephanshausen',7.947112,50.035105],
[106,'Panrod',8.133056,50.255],
[107,'Reichenbach',8.373889,50.273611],
[108,'Martinsthal',8.121111,50.0525],
[109,'Massenheim',8.38777,50.040278],
[110,'Springen',7.981917,50.141757],
[111,'Dodenau',8.596111,51.025556],
[113,'Engelbach',8.608611,50.923889],
[114,'Oberdieten',8.415278,50.858056],
[115,'Herzhausen',8.558611,50.825556],
[116,'Elnhausen',8.690556,50.81],
[117,'Wehrshausen',8.726389,50.811667],
[118,'Niederklein',8.996389,50.794167],
[119,'Anzefahr',8.865833,50.844722],
[120,'Naunstadt',8.450694,50.374889],
[121,'Münster',8.616875,50.390264],
[122,'Ober-Florstadt',8.877017,50.326283],
[123,'Glashütten',9.133889,50.418333],
[124,'Hitzkirchen',9.253197,50.342937],
[125,'Hintersteinau',9.466083,50.416258],
[126,'Hohenzell',9.537222,50.322222],
[127,'Heubach',9.719167,50.384167],
[128,'Obernhain',8.5447,50.2794],
[129,'Burg-Gräfenrode',8.796944,50.258889],
[130,'Erbstadt',8.865339,50.269542],
[131,'Vonhausen',9.101667,50.258333],
[132,'Haitz',9.227104,50.209662],
[133,'Ahl',9.396389,50.293611],
[134,'Neuengronau',9.604197,50.27034],
[135,'Mammolshain',8.468333,50.181667],
[136,'Berkersheim',8.6975,50.172222],
[137,'Dietesheim',8.855,50.123056],
[138,'Horbach',9.161944,50.14],
[139,'Lanzingen',9.28,50.179722],
[140,'Lohrhaupten',9.48034,50.12949],
[141,'Eddersheim',8.471677,50.039526],
[142,'Götzenhain',8.715833,50.012778],
[143,'Harreshausen',8.983889,49.971944],
[144,'Klein-Welzheim',9.004734,50.042589],
[145,'Schneppenhausen',8.579722,49.928333],
[146,'Georgenhausen',8.831389,49.826944],
[147,'Sickenhofen',8.929167,49.949722],
[148,'Radheim',9.018056,49.888889],
[149,'Rodau',8.579722,49.718611],
[150,'Ernsthofen',8.741944,49.7725],
[151,'Ober-Kinzig',8.943547,49.769687],
[152,'Zell',8.992465,49.720914],
[153,'Schwanheim',8.569722,49.697778],
[154,'Schlierbach',8.765802,49.68336],
[155,'Hüttenthal',8.940833,49.620556],
[156,'Würzberg',9.079465,49.653932],
[157,'Hüttenfeld',8.583333,49.6],
[158,'Unter-Flockenbach',8.729646,49.531643],
[159,'Siedelsbrunn',8.808056,49.549444],
[160,'Hetzbach',8.9891,49.5933],
[161,'Darsberg',8.851826,49.417974]
];
This file has been truncated, but you can view the full file.
// ################ questions #################################
var quest = new Array(7);
quest[0] = "Ein Freund erzählt Ihnen, dass seine Tochter ein Kind erwartet. Sie wissen das jedoch schon. Können Sie in dieser Situation sagen: <br><br> <b>Sie hat mir's schon erzählt.</b>";
quest[1] = "<img src='beten.jpg' width='160'><br>Können Sie zur Beschreibung dieses Bildes folgenden Satz sagen: <br><br> <b>Das Kind ist am beten.</b>";
quest[2] = "Zufällig kommt ihr Freund Otto vorbei. Er fragt Sie, ob Sie schon mitbekommen haben, dass die Nachbarn sich scheiden lassen. Sie haben davon aber noch nichts gehört. Könnten Sie in dieser Situation folgenden Satz sagen: <br><br> <b>Da weiß ich noch nichts von.</b>";
quest[3] = "Sie möchten Ausdrücken, dass sie den Lohn ihrer Arbeit mit niemandem teilen möchten. Können Sie in dieser Situation folgenden Satz sagen: <br><br> <b>Das Geld, wo ich verdiene, gehört mir.</b>";
quest[4] = "Ihre Enkelin hat Sie schon lange nicht mehr besucht. Können Sie sie folgendes fragen: <br><br> <b>Wann kommst du denn mal wieder bei mich?</b>";
quest[5] = "Ist es für Sie möglich, Frauen mit dem neutralen Geschlecht zu bezeichnen? Stellen Sie sich vor, sie sprechen über ihre Schwester Petra. Können Sie über sie folgenden Satz sagen: <br><br> <b>Es ist 75 Jahre alt.</b>";
quest[6] = "Sie haben viele antike Sachen, die Sie auf dem Trödelmarkt verkaufen wollen. Leider ist das Wetter schlecht und die Aktion ein echter Reinfall. Wenn Sie Ihrem Nachbarn später davon erzählen, können Sie dann folgenden Satz verwenden: <br><br> <b>Wir haben lange gewartet, aber keines ist gekommen.</b>";
/*
quest[0] = "mir es: <br>Bsp: 'Sie hat mir es schon gesagt.'";
quest[1] = "ihr es: <br>Bsp: 'Ich habe ihr es schon erzählt.'";
quest[2] = "tut beten: <br>Bsp: 'Das Kind tut beten.'";
quest[3] = "ist am beten: <br>Bsp: 'Das Kind ist am beten.'";
quest[4] = "dadavon: <br>Bsp: 'Dadavon weiß ich noch nichts.'";
quest[5] = "da davon: <br>Bsp: 'Da weiß ich noch nichts davon.'";
quest[6] = "mir ihn: <br>Bsp: 'Er hat mir ihn schon gegeben.'";
quest[7] = "müssen gelesen haben: <br>Bsp: 'Der Lehrer hat uns aufgegeben, dass wir das Buch bis morgen müssen gelesen haben.'";
quest[8] = "gelesen müssen haben: <br>Bsp: 'Der Lehrer hat uns aufgegeben, dass wir das Buch bis morgen gelesen müssen haben.'";
quest[9] = "was: <br>Bsp: 'Das Geld, was ich verdiene, gehört mir.'";
quest[10] = "wo: <br>Bsp: 'Das Geld, wo ich verdiene, gehört mir.'";
quest[11] = "der Monika sein Rad";
quest[12] = "kriegt weggenommen: <br>Bsp: 'Peter kriegt den Teller weggenommen.'";
quest[13] = "nach mir: <br>Bsp: 'Komm mal bitte nach mir.'";
quest[14] = "tun";
*/
/*
quest[0] = "mir es: <br>Bsp: 'Sie hat mir es schon gesagt.'";
quest[1] = "ihr es: <br>Bsp: 'Ich habe ihr es schon erzählt.'";
quest[2] = "kriegt eingeschüttet: <br>Bsp: 'Er kriegt ein Glas Wasser eingeschüttet.'";
quest[3] = "tut beten: <br>Bsp: 'Das Kind tut beten.'";
quest[4] = "ist am beten: <br>Bsp: 'Das Kind ist am beten.'";
quest[5] = "ist beim beten: <br>Bsp: 'Das Kind ist beim beten.'";
quest[6] = "ihm es: <br>Bsp: 'Ich habe ihm es schon gegeben.'";
quest[7] = "dadavon: <br>Bsp: 'Dadavon weiß ich noch nichts.'";
quest[8] = "da davon: <br>Bsp: 'Da weiß ich noch nichts davon.'";
quest[9] = "da von: <br>Bsp: 'Da weiß ich noch nichts von.'";
quest[10] = "mir ihn: <br>Bsp: 'Er hat mir ihn schon gegeben.'";
quest[11] = "müssen gelesen haben: <br>Bsp: 'Der Lehrer hat uns aufgegeben, dass wir das Buch bis morgen müssen gelesen haben.'";
quest[12] = "gelesen müssen haben: <br>Bsp: 'Der Lehrer hat uns aufgegeben, dass wir das Buch bis morgen gelesen müssen haben.'";
quest[13] = "was: <br>Bsp: 'Das Geld, was ich verdiene, gehört mir.'";
quest[14] = "wo: <br>Bsp: 'Das Geld, wo ich verdiene, gehört mir.'";
quest[15] = "das wo: <br>Bsp: 'Das Geld, das wo ich verdiene, gehört mir.'";
quest[16] = "dem Monika ihr Rad";
quest[17] = "der Monika sein Rad";
quest[18] = "dem Monika sein Rad";
quest[19] = "kriegt weggenommen: <br>Bsp: 'Peter kriegt den Teller weggenommen.'";
quest[20] = "bei mich: <br>Bsp: 'Komm mal bitte bei mich.'";
quest[21] = "nach mir: <br>Bsp: 'Komm mal bitte nach mir.'";
quest[22] = "es";
quest[23] = "sie";
quest[24] = "das";
quest[25] = "die";
quest[26] = "tun";
quest[27] = "am";
quest[28] = "keines";
*/
var questionNr = 0;
var bermudaTriangleArr = new Array();
// ################## result vector ####################
var resultVector = new Array();
for(var i=0;i<quest.length;i++){
resultVector[i] = 0;
}
// ################## normalized data ###################
var matrixNorm = [
[1,0,0,0,0,1,0],
[1,1,1,0,0,1,0],
[1,1,0,0,0,1,0],
[1,1,0,0,1,1,0],
[1,1,1,0,0,1,0],
[1,1,0,0,0,1,0],
[1,0,0,0,0,1,0],
[1,0,0,0,0,1,0],
[1,0,0,0,0,1,1],
[1,0,0,0,0,1,0],
[1,0,1,0,0,1,0],
[1,1,1,0,1,1,0],
[1,0,1,0,0,1,0],
[0,0,0,0,0,1,0],
[0,1,0,0,0,1,0],
[0,0,1,0,0,1,0],
[1,0,1,0,1,1,0],
[0,0,1,0,0,1,0],
[1,0,0,0,1,1,0],
[0,0,0,0,1,1,0],
[1,1,1,0,1,1,0],
[1,0,1,0,0,1,0],
[0,0,0,0,0,1,0],
[1,0,0,0,1,0,1],
[1,0,0,0,1,1,0],
[1,0,0,0,1,1,0],
[1,0,1,0,1,0,0],
[0,0,0,0,1,0,0],
[1,0,0,0,1,1,1],
[0,0,0,0,1,1,0],
[0,0,0,0,1,1,0],
[1,0,0,0,1,1,0],
[0,0,0,0,1,1,0],
[0,0,0,0,0,0,0],
[0,0,0,0,1,1,0],
[1,0,0,0,1,1,0],
[0,0,1,0,0,0,0],
[0,0,0,0,1,1,0],
[0,0,0,0,0,1,0],
[0,0,0,0,0,1,0],
[1,0,0,0,0,1,0],
[0,0,1,0,0,1,0],
[1,0,1,0,0,1,0],
[1,0,0,0,0,1,0],
[1,0,0,0,1,1,1],
[1,0,0,0,1,1,0],
[1,0,0,0,1,0,0],
[1,0,0,0,1,1,0],
[1,0,0,0,1,1,0],
[1,0,0,0,1,1,0],
[1,0,0,0,1,1,1],
[1,0,0,0,0,0,0],
[1,0,0,0,0,1,0],
[1,0,0,0,0,1,0],
[1,0,0,1,0,1,1],
[1,0,0,0,1,1,0],
[1,0,0,1,0,0,0],
[0,1,1,0,0,1,0],
[0,1,0,0,0,1,0],
[0,0,0,0,0,1,0],
[0,1,0,0,0,1,0],
[0,1,0,0,0,1,0],
[0,0,0,0,0,1,0],
[0,0,1,0,0,1,0],
[0,1,0,0,0,1,0],
[0,1,0,0,0,1,0],
[1,1,0,0,0,1,0],
[0,1,0,0,0,1,0],
[0,0,0,0,0,1,0],
[1,1,0,0,0,1,0],
[1,1,1,0,0,1,0],
[1,1,1,0,0,0,0],
[0,1,0,0,0,1,0],
[1,1,0,0,0,0,0],
[1,0,1,0,1,1,0],
[1,0,0,0,1,1,0],
[1,0,1,0,1,1,0],
[1,0,1,0,1,1,0],
[1,0,0,0,1,1,0],
[1,0,0,0,1,0,1],
[1,0,0,0,0,0,0],
[1,0,0,0,0,1,0],
[1,0,0,0,0,0,0],
[1,0,0,0,0,0,0],
[1,0,0,0,1,0,0],
[1,0,0,0,0,0,0],
[1,0,0,0,0,0,0],
[1,0,0,0,0,0,0],
[1,0,0,0,0,0,0],
[1,0,0,0,0,1,0],
[1,0,0,0,0,0,0],
[1,1,1,0,1,1,0],
[1,1,1,0,1,1,0],
[1,0,0,0,1,1,0],
[1,1,0,0,1,1,0],
[1,1,1,0,1,1,0],
[1,0,1,0,1,1,0],
[1,0,0,0,1,1,0],
[1,0,0,0,1,1,0],
[1,0,0,0,1,1,1],
[1,0,0,0,1,1,0],
[1,0,0,0,0,1,0],
[1,0,0,0,1,0,0],
[1,0,0,0,1,0,0],
[1,0,0,0,1,1,0],
[1,0,0,1,1,1,0],
[1,0,0,0,1,1,0],
[1,1,1,0,0,1,0],
[1,1,1,0,0,1,0],
[1,1,1,0,0,1,0],
[1,0,1,0,0,1,0],
[1,0,1,0,0,1,0],
[1,1,1,0,0,1,0],
[1,0,1,0,0,1,0],
[1,0,0,0,0,1,0],
[1,0,0,0,1,1,0],
[1,0,0,0,1,0,0],
[1,0,0,0,1,1,0],
[1,0,0,0,0,1,1],
[1,0,0,0,0,1,0],
[1,0,0,0,1,1,0],
[1,0,0,1,0,1,0],
[1,0,0,1,1,1,0],
[1,0,0,0,1,1,0],
[1,0,0,0,1,1,0],
[1,0,0,1,1,1,1],
[1,0,0,0,1,1,0],
[1,0,0,1,1,1,1],
[1,0,0,0,1,1,0],
[1,0,0,0,1,1,1],
[1,0,0,0,0,0,0],
[1,0,0,0,1,1,0],
[1,0,0,1,1,0,0],
[1,0,0,1,1,1,0],
[1,0,0,0,1,0,0],
[1,0,0,1,1,1,0],
[1,0,0,0,0,1,0],
[1,0,0,0,1,0,1],
[1,0,0,0,0,0,0],
[1,0,0,1,1,1,0],
[1,0,0,1,0,1,0],
[1,0,0,0,0,1,1],
[1,0,0,0,1,1,1],
[1,0,0,1,0,0,0],
[1,0,0,0,0,1,1],
[1,0,0,0,0,1,0],
[1,0,0,1,0,0,0],
[1,0,0,1,1,0,1],
[1,0,0,1,0,1,0],
[1,0,0,1,0,1,1],
[1,0,0,1,0,1,0],
[1,0,0,1,0,1,1],
[1,0,0,0,0,0,0],
[1,0,0,1,0,0,1],
[1,0,0,1,0,0,0],
[1,0,0,1,0,1,0],
[1,0,0,0,0,1,0]
];
// ################## location information ##############
var locationinfo = [
[1,'Haine',8.720886,51.041558],
[2,'Frankenau',8.933333,51.1],
[3,'Odershausen',9.107222,51.087778],
[4,'Arnsbach',9.246005,51.054305],
[5,'Ernsthausen',8.733812,50.984576],
[6,'Gilserberg',9.060833,50.951944],
[7,'Spieskappel',9.318611,50.966944],
[8,'Oberaula',9.470833,50.858056],
[9,'Leusel',9.233,50.7591],
[10,'Eifa',9.34606,50.74987],
[11,'Schrecksbach',9.283333,50.833333],
[12,'Raboldshausen',9.5275,50.913333],
[13,'Bracht',8.849167,50.921667],
[14,'Kirchbauna',9.422194,51.245353],
[15,'Sachsenberg',8.788767,51.126803],
[16,'Lohne',9.266597,51.179247],
[17,'Quentel',9.645833,51.199722],
[18,'Söhrewald',9.575278,51.227222],
[19,'Welferode',9.466389,51.030833],
[20,'Bergheim',9.644444,51.107222],
[21,'Solz',9.880278,51.004444],
[22,'Affoldern',9.086389,51.166667],
[23,'Hemfurth',9.053056,51.171944],
[24,'Rohrbach',9.711944,50.913056],
[25,'Mengshausen',9.618056,50.794722],
[26,'Lengers',9.996944,50.864167],
[27,'Bosserode',9.992203,50.951814],
[28,'Ronshausen',9.859722,50.947778],
[29,'Rotensee',9.7425,50.834722],
[30,'Wickenrode',9.729722,51.257222],
[31,'Rossbach',9.811667,51.315],
[32,'Orferode',9.939444,51.257222],
[33,'Velmeden',9.796389,51.213611],
[34,'Altenburschla',10.177833,51.150333],
[35,'Aue',10.126694,51.178689],
[36,'Herleshausen',10.166667,51.016667],
[37,'Röhrda',10.058333,51.1025],
[38,'Hoheneiche',9.972108,51.128686],
[39,'Wilhelmshausen',9.579278,51.403878],
[40,'Ermschwerd',9.817222,51.356389],
[41,'Deisel',9.408611,51.591389],
[42,'Oedelsheim',9.594722,51.591111],
[43,'Gottsbüren',9.499444,51.578889],
[44,'Heisebeck',9.656511,51.586781],
[46,'Michelsrombach',9.662778,50.662778],
[47,'Kirchhasel',9.800833,50.701111],
[48,'Großentaft',9.860339,50.740661],
[49,'Kämmerzell',9.640833,50.600278],
[50,'Hofaschenbach',9.845833,50.636944],
[51,'Simmershausen',10.033889,50.5925],
[52,'Hauswurz',9.475833,50.462778],
[53,'Magdlos',9.514167,50.425833],
[54,'Kerzell',9.670833,50.486389],
[55,'Weyhers',9.8,50.466667],
[56,'Wüstensachsen',10.003056,50.506944],
[57,'Müs',9.504444,50.591111],
[58,'Nordheim',8.389167,49.681667],
[59,'Helmighausen',8.926097,51.472603],
[60,'Rhoden',9.010047,51.475328],
[62,'Ostheim',9.321111,51.506111],
[63,'Rhenegge',8.770556,51.360278],
[64,'Adorf',8.805856,51.361019],
[65,'Wetterburg',9.059153,51.383953],
[66,'Breuna',9.183333,51.416667],
[67,'Schwalefeld',8.63,51.307222],
[68,'Twiste',8.967747,51.336667],
[69,'Meineringhausen',8.944525,51.255086],
[70,'Freienhagen',9.066111,51.279167],
[71,'Istha',9.228503,51.304014],
[72,'Marienhagen',8.911228,51.211469],
[73,'Eppe',8.771464,51.235381],
[74,'Münden',8.747964,51.152439],
[75,'Willingen',8.613889,51.293333],
[76,'Offdilln',8.2302,50.8264],
[77,'Eibach',8.324722,50.7475],
[78,'Niederweidbach',8.485011,50.702022],
[79,'Kölschhausen',8.397778,50.631944],
[80,'Blasbach',8.519167,50.61],
[81,'Kröffelbach',8.473633,50.445647],
[82,'Kirch-Göns',8.653056,50.470833],
[83,'Ruttershausen',8.710678,50.661645],
[84,'Rüddingshausen',8.915497,50.688194],
[85,'Nieder-Gemünden',9.058056,50.694167],
[86,'Albach',8.794483,50.555692],
[87,'Allendorf/Lahn',8.622422,50.551883],
[88,'Göbelnrod',8.922222,50.597778],
[89,'Ulrichstein',9.2,50.583333],
[90,'Merlau',9.026944,50.622778],
[91,'Engelrod',9.262778,50.579722],
[92,'Borsdorf',8.974039,50.430808],
[93,'Herchenhain',9.275,50.483333],
[94,'Langendernbach',8.048333,50.539444],
[95,'Dorndorf',8.0025,50.505],
[96,'Elz',8.033333,50.416667],
[97,'Heckholzhausen',8.157778,50.485],
[98,'Erdbach',8.218611,50.689722],
[99,'Mademühlen',8.163889,50.624722],
[100,'Haintchen',8.316944,50.36],
[101,'Weyer',8.223889,50.3675],
[103,'Wildsachsen',8.361127,50.117486],
[104,'Presberg',7.892561,50.051717],
[105,'Stephanshausen',7.947112,50.035105],
[106,'Panrod',8.133056,50.255],
[107,'Reichenbach',8.373889,50.273611],
[108,'Martinsthal',8.121111,50.0525],
[109,'Massenheim',8.38777,50.040278],
[110,'Springen',7.981917,50.141757],
[111,'Dodenau',8.596111,51.025556],
[113,'Engelbach',8.608611,50.923889],
[114,'Oberdieten',8.415278,50.858056],
[115,'Herzhausen',8.558611,50.825556],
[116,'Elnhausen',8.690556,50.81],
[117,'Wehrshausen',8.726389,50.811667],
[118,'Niederklein',8.996389,50.794167],
[119,'Anzefahr',8.865833,50.844722],
[120,'Naunstadt',8.450694,50.374889],
[121,'Münster',8.616875,50.390264],
[122,'Ober-Florstadt',8.877017,50.326283],
[123,'Glashütten',9.133889,50.418333],
[124,'Hitzkirchen',9.253197,50.342937],
[125,'Hintersteinau',9.466083,50.416258],
[126,'Hohenzell',9.537222,50.322222],
[127,'Heubach',9.719167,50.384167],
[128,'Obernhain',8.5447,50.2794],
[129,'Burg-Gräfenrode',8.796944,50.258889],
[130,'Erbstadt',8.865339,50.269542],
[131,'Vonhausen',9.101667,50.258333],
[132,'Haitz',9.227104,50.209662],
[133,'Ahl',9.396389,50.293611],
[134,'Neuengronau',9.604197,50.27034],
[135,'Mammolshain',8.468333,50.181667],
[136,'Berkersheim',8.6975,50.172222],
[137,'Dietesheim',8.855,50.123056],
[138,'Horbach',9.161944,50.14],
[139,'Lanzingen',9.28,50.179722],
[140,'Lohrhaupten',9.48034,50.12949],
[141,'Eddersheim',8.471677,50.039526],
[142,'Götzenhain',8.715833,50.012778],
[143,'Harreshausen',8.983889,49.971944],
[144,'Klein-Welzheim',9.004734,50.042589],
[145,'Schneppenhausen',8.579722,49.928333],
[146,'Georgenhausen',8.831389,49.826944],
[147,'Sickenhofen',8.929167,49.949722],
[148,'Radheim',9.018056,49.888889],
[149,'Rodau',8.579722,49.718611],
[150,'Ernsthofen',8.741944,49.7725],
[151,'Ober-Kinzig',8.943547,49.769687],
[152,'Zell',8.992465,49.720914],
[153,'Schwanheim',8.569722,49.697778],
[154,'Schlierbach',8.765802,49.68336],
[155,'Hüttenthal',8.940833,49.620556],
[156,'Würzberg',9.079465,49.653932],
[157,'Hüttenfeld',8.583333,49.6],
[158,'Unter-Flockenbach',8.729646,49.531643],
[159,'Siedelsbrunn',8.808056,49.549444],
[160,'Hetzbach',8.9891,49.5933],
[161,'Darsberg',8.851826,49.417974]
];
// ################## locations #########################
var locations = [
'8.68862391488566 51.1081833337226;8.688453 51.10811;8.6883135 51.108063;8.688068 51.107983;8.687694 51.107872;8.687353 51.107765;8.68717 51.107727;8.686564 51.1076;8.685214 51.10732;8.6847315 51.107212;8.684021 51.107025;8.683835 51.106964;8.682935 51.106663;8.682688 51.106537;8.681775 51.106083;8.681696 51.106045;8.681584 51.105988;8.681167 51.105755;8.68077 51.10557;8.68024 51.10532;8.679974 51.105194;8.679424 51.10492;8.67933 51.104874;8.679319 51.104713;8.67925 51.104816;8.679124 51.104958;8.678746 51.104813;8.677931 51.104485;8.677665 51.10437;8.676998 51.104095;8.676504 51.10389;8.676651 51.103767;8.676777 51.103664;8.676452 51.10352;8.676372 51.103477;8.676271 51.10341;8.675972 51.10322;8.675831 51.103085;8.675497 51.102745;8.675318 51.102535;8.675234 51.10248;8.675089 51.102398;8.674892 51.102325;8.674624 51.102215;8.674435 51.102165;8.67422 51.1021;8.673847 51.101982;8.673744 51.10194;8.673635 51.101856;8.673559 51.101772;8.673501 51.1017;8.6734085 51.10159;8.673177 51.101704;8.673001 51.101845;8.672541 51.101448;8.672271 51.10121;8.671971 51.100956;8.671391 51.100452;8.671216 51.100403;8.671092 51.100384;8.6707945 51.10035;8.670451 51.100365;8.670172 51.10037;8.670015 51.10038;8.6699 51.10036;8.668884 51.100018;8.668895 51.099934;8.668916 51.099792;8.66844 51.09975;8.668349 51.099743;8.668153 51.099636;8.667994 51.099545;8.66786 51.099483;8.667782 51.09944;8.667612 51.09936;8.667443 51.0993;8.667286 51.099228;8.666892 51.09904;8.666639 51.098923;8.666256 51.098743;8.666002 51.09862;8.665402 51.09853;8.664983 51.098465;8.664858 51.098446;8.664692 51.098354;8.664465 51.098232;8.664351 51.09817;8.664425 51.09797;8.664125 51.097507;8.664054 51.09739;8.663941 51.0972;8.663612 51.0971;8.66348 51.09715;8.663236 51.097244;8.662858 51.097126;8.662286 51.096943;8.661928 51.0969;8.661471 51.09685;8.661169 51.09657;8.66139 51.096397;8.661641 51.096203;8.661054 51.096043;8.660291 51.096104;8.660176 51.09611;8.659791 51.096153;8.659725 51.096115;8.659456 51.095963;8.659257 51.09585;8.659089 51.095776;8.658796 51.095646;8.658569 51.09558;8.657854 51.09538;8.656989 51.095135;8.656801 51.095127;8.656266 51.09509;8.655971 51.095062;8.655797 51.095055;8.655406 51.095036;8.655063 51.095016;8.654986 51.09504;8.654595 51.095192;8.654473 51.09517;8.653926 51.09508;8.653476 51.095215;8.653413 51.09505;8.653365 51.094925;8.652043 51.09489;8.65063695233645 51.0948536130243;8.662998 50.998469;8.818239 51.033685;8.740634 51.095482;8.68862391488566 51.1081833337226',
'8.975033 51.166196;8.866861 51.144744;8.845994 51.032193;8.94826 50.983927;9.016691 51.042857;9.02009 51.091216;8.975033 51.166196',
'9.178185 51.148713;9.061588 51.117922;9.02009 51.091216;9.016691 51.042857;9.158163 50.994543;9.190269 51.127659;9.178185 51.148713',
'9.190269 51.127659;9.158163 50.994543;9.191152 50.934865;9.35964 51.074895;9.362241 51.099316;9.190269 51.127659',
'8.818239 51.033685;8.662998 50.998469;8.657966 50.981559;8.696988 50.901053;8.70436 50.899227;8.760777 50.896805;8.832434 51.0282;8.818239 51.033685',
'9.016691 51.042857;8.94826 50.983927;8.959508 50.905289;8.962351 50.90012;9.123255 50.834398;9.157183 50.864688;9.191491 50.929045;9.191152 50.934865;9.158163 50.994543;9.016691 51.042857',
'9.35964 51.074895;9.191152 50.934865;9.191491 50.929045;9.372391 50.881281;9.416616 50.943107;9.35964 51.074895',
'9.442512 50.943773;9.416616 50.943107;9.372391 50.881281;9.377948 50.839138;9.478294 50.723407;9.501394 50.726315;9.548292 50.835333;9.442512 50.943773',
'9.157183 50.864688;9.123255 50.834398;9.118197 50.800268;9.162321 50.681388;9.236334 50.667493;9.283061 50.67525;9.291113 50.773877;9.157183 50.864688',
'9.377948 50.839138;9.291113 50.773877;9.283061 50.67525;9.381652 50.626993;9.478294 50.723407;9.377948 50.839138',
'9.191491 50.929045;9.157183 50.864688;9.291113 50.773877;9.377948 50.839138;9.372391 50.881281;9.191491 50.929045',
'9.578753 51.014631;9.442512 50.943773;9.548292 50.835333;9.619687 50.889841;9.619837 50.989852;9.578753 51.014631',
'8.845994 51.032193;8.832434 51.0282;8.760777 50.896805;8.786708 50.867861;8.959508 50.905289;8.94826 50.983927;8.845994 51.032193',
'9.427358 51.397326;9.353863 51.368836;9.322245 51.264436;9.381425 51.125141;9.488177 51.147134;9.508309 51.317112;9.427358 51.397326',
'8.835617 51.189937;8.796013 51.183625;8.740634 51.095482;8.818239 51.033685;8.832434 51.0282;8.845994 51.032193;8.866861 51.144744;8.835617 51.189937',
'9.322245 51.264436;9.173282 51.218955;9.178185 51.148713;9.190269 51.127659;9.362241 51.099316;9.381425 51.125141;9.322245 51.264436',
'9.642276 51.294856;9.587507 51.154337;9.72613 51.152256;9.723971 51.175668;9.642276 51.294856',
'9.508309 51.317112;9.488177 51.147134;9.532435 51.122595;9.587507 51.154337;9.642276 51.294856;9.638526 51.314163;9.6351999638315 51.3142383241179;9.634924 51.312626;9.634333 51.311672;9.631758 51.311733;9.628603 51.31189;9.62897808941319 51.3143792297421;9.508309 51.317112',
'9.488177 51.147134;9.381425 51.125141;9.362241 51.099316;9.35964 51.074895;9.416616 50.943107;9.442512 50.943773;9.578753 51.014631;9.532435 51.122595;9.488177 51.147134',
'9.587507 51.154337;9.532435 51.122595;9.578753 51.014631;9.619837 50.989852;9.75392 51.036464;9.774362 51.083371;9.72613 51.152256;9.587507 51.154337',
'9.858046 51.116934;9.774362 51.083371;9.75392 51.036464;9.766254 51.013746;9.925777 50.955877;9.964509 51.038245;9.858046 51.116934',
'9.155625 51.237224;9.078267 51.223281;9.061588 51.117922;9.178185 51.148713;9.173282 51.218955;9.155625 51.237224',
'9.012414 51.231299;8.982175 51.191826;8.975033 51.166196;9.02009 51.091216;9.061588 51.117922;9.078267 51.223281;9.012414 51.231299',
'9.75392 51.036464;9.619837 50.989852;9.619687 50.889841;9.668609 50.851026;9.793079 50.899578;9.766254 51.013746;9.75392 51.036464',
'9.619687 50.889841;9.548292 50.835333;9.501394 50.726315;9.551216 50.698515;9.701281 50.74938;9.668609 50.851026;9.619687 50.889841',
'10.03422 50.91009;10.033209 50.910072;10.0331286072632 50.9100757911932;10.0312027605326 50.9099716209773;10.0311 50.9099;10.030712 50.909798;10.030249 50.909798;10.030009 50.909817;10.0293839197889 50.9098732387801;9.98537190774022 50.9074926023968;9.985265 50.90708;9.983276 50.90621;9.982358 50.90575;9.981213 50.90537;9.98009 50.904995;9.978347 50.905106;9.9772 50.905552;9.976626 50.90587;9.9733 50.906715;9.97285978598891 50.9068158141545;9.927347 50.904354;9.890762 50.844311;9.95148976632408 50.7771424271695;9.951311 50.77794;9.951414 50.778328;9.951694 50.778584;9.952133 50.7788;9.952724 50.778763;9.953156 50.778618;9.953407 50.778618;9.953638 50.77876;9.95383 50.77907;9.953596 50.779087;9.953372 50.77915;9.953445 50.77935;9.952081 50.779636;9.951916 50.779408;9.950665 50.779522;9.950835 50.78;9.950171 50.780018;9.9493 50.779854;9.949381 50.780388;9.949529 50.780838;9.949747 50.781284;9.950264 50.781937;9.950546 50.78229;9.95099 50.782852;9.9513645 50.783154;9.952308 50.783524;9.9524 50.78452;9.952569 50.78494;9.952872 50.78521;9.954624 50.78593;9.95446 50.786;9.95348 50.786415;9.952713 50.78674;9.949242 50.7882;9.94925 50.78837;9.949287 50.789143;9.949023 50.789593;9.948419 50.79028;9.948262 50.790356;9.948258 50.79115;9.946095 50.79246;9.944028 50.793972;9.943708 50.79499;9.943412 50.797035;9.943896 50.798706;9.944301 50.7996;9.944349 50.799683;9.944445 50.799843;9.944523 50.8;9.944669 50.800262;9.944979 50.800823;9.94616 50.802032;9.94657 50.802364;9.948251 50.803707;9.9495125 50.804665;9.950069 50.80509;9.951251 50.806046;9.952718 50.807293;9.9529085 50.807457;9.954525 50.80868;9.955344 50.80916;9.956254 50.809483;9.95655 50.809555;9.95577 50.81014;9.954811 50.81093;9.954514 50.810963;9.954672 50.811165;9.954763 50.811287;9.95704 50.812183;9.957175 50.812386;9.956691 50.81318;9.95612 50.814007;9.956026 50.81414;9.955773 50.814415;9.957437 50.814995;9.95753 50.8151;9.957184 50.815468;9.957024 50.815556;9.956044 50.815147;9.955064 50.814888;9.954014 50.814754;9.953306 50.814724;9.952165 50.814724;9.950773 50.814663;9.95043 50.814846;9.950131 50.81512;9.94988 50.81555;9.94981 50.815838;9.949854 50.816418;9.949807 50.81665;9.949873 50.816982;9.950031 50.817284;9.950394 50.81756;9.951895 50.819088;9.952144 50.81945;9.952337 50.819927;9.95243 50.82025;9.952395 50.82056;9.9523325 50.82105;9.952294 50.821255;9.952104 50.82147;9.952201 50.82153;9.952295 50.821587;9.954276 50.822163;9.957231 50.823036;9.958446 50.82339;9.959057 50.823555;9.961665 50.824097;9.961939 50.824226;9.961983 50.824314;9.961665 50.82463;9.961594 50.824787;9.961687 50.82486;9.96182 50.824917;9.962209 50.824978;9.963805 50.825485;9.9647875 50.825775;9.966405 50.8265;9.966655 50.826645;9.966449 50.82686;9.966448 50.82706;9.967951 50.827873;9.967766 50.828102;9.969815 50.829712;9.97 50.829857;9.970248 50.83005;9.971896 50.830894;9.972936 50.831615;9.975924 50.832924;9.97638 50.833267;9.976677 50.833298;9.977318 50.832897;9.979193 50.832222;9.980155 50.831837;9.980223 50.83162;9.981618 50.83138;9.982029 50.831337;9.982234 50.831482;9.982371 50.83197;9.982483 50.832245;9.982733 50.83229;9.983625 50.83212;9.984174 50.831917;9.984334 50.831802;9.984358 50.83159;9.98429 50.83134;9.984062 50.831066;9.984021 50.83;9.984204 50.829903;9.984982 50.829933;9.984938 50.829353;9.98567 50.82913;9.986515 50.829056;9.98816 50.829163;9.98841 50.829132;9.988962 50.828213;9.989583 50.828186;9.98969 50.82821;9.989623 50.82885;9.989804 50.828934;9.990693 50.829166;9.991364 50.829235;9.991563 50.829258;9.992072 50.82901;9.992401 50.82886;9.992706 50.828667;9.993009 50.828136;9.993348 50.827835;9.993943 50.827618;9.994313 50.82734;9.994516 50.827187;9.994974 50.8266;9.995803 50.82591;9.996117 50.825836;9.996483 50.825996;9.99744 50.82659;9.997943 50.82678;9.997896 50.826965;9.997781 50.82714;9.997551 50.827656;9.998694 50.827904;9.999999 50.82811;10.000672 50.828217;10.000596 50.828842;10.00172 50.828876;10.001758 50.82937;10.001941 50.829426;10.001937 50.82979;10.000992 50.830235;10.001443 50.830902;10.001936 50.83189;10.002422 50.83356;10.003122 50.83455;10.004239 50.83537;10.005067 50.835938;10.004589 50.83669;10.00456 50.83708;10.00481 50.83737;10.004959 50.837456;10.005174 50.837574;10.006328 50.836926;10.006634 50.83666;10.006792 50.83652;10.00747 50.835526;10.0079565 50.835075;10.008463 50.834774;10.009221 50.834633;10.011288 50.834366;10.01171 50.834583;10.012156 50.83476;10.012591 50.834805;10.013188 50.834763;10.01427 50.83432;10.015144 50.834175;10.016267 50.83405;10.017304 50.83384;10.018225 50.833492;10.019168 50.833195;10.020643 50.832645;10.02184 50.832;10.022419 50.83145;10.022838 50.83092;10.023182 50.830917;10.023891 50.831257;10.024439 50.831417;10.024558 50.831524;10.024802 50.831707;10.025207 50.832478;10.025795 50.83325;10.026205 50.833466;10.02698 50.834023;10.027614 50.83459;10.028362 50.835506;10.028501 50.835903;10.028608 50.836205;10.028705 50.837566;10.028302 50.83903;10.027915 50.84064;10.027663 50.840813;10.026193 50.840893;10.028091 50.841408;10.029234 50.84185;10.030633 50.841854;10.03252 50.842278;10.0336075 50.842518;10.034228 50.842377;10.034321 50.84259;10.034943 50.844048;10.033838 50.844566;10.034927 50.84474;10.03512 50.844772;10.037502 50.84504;10.037753 50.84522;10.037499 50.84539;10.036643 50.8461;10.035763 50.846924;10.036053 50.847607;10.036248 50.84846;10.036356 50.84923;10.036693 50.849754;10.037461 50.850876;10.036905 50.851395;10.037225 50.851643;10.038747 50.853043;10.037733 50.85346;10.036836 50.85368;10.036372 50.853718;10.035895 50.85376;10.034734 50.853336;10.034479 50.853245;10.033771 50.85292;10.033017 50.85245;10.032446 50.85225;10.031416 50.85195;10.030181 50.851673;10.029493 50.851597;10.028965 50.851612;10.026953 50.850906;10.026449 50.850502;10.026137 50.850246;10.0237255 50.848354;10.023225 50.847797;10.02277 50.847744;10.0218935 50.847824;10.021449 50.848778;10.021187 50.849663;10.021114 50.850082;10.02091 50.85207;10.02044 50.85296;10.018809 50.855537;10.018662 50.856247;10.018586 50.856915;10.018572 50.85799;10.018436 50.858562;10.018929 50.85902;10.019557 50.86065;10.020163 50.861668;10.020659 50.86215;10.021519 50.8632;10.021768 50.864147;10.021829 50.86455;10.022187 50.86507;10.022734 50.86569;10.023206 50.86649;10.02346 50.8668;10.023859 50.867077;10.024481 50.86742;10.025761 50.86782;10.026886 50.867897;10.02787 50.8682;10.028817 50.86849;10.029614 50.86887;10.03188 50.86917;10.032691 50.869503;10.033884 50.87001;10.035121 50.870472;10.036216 50.87089;10.036764 50.871334;10.037472 50.87157;10.037676 50.871803;10.038146 50.87295;10.039042 50.87381;10.039652 50.874004;10.041117 50.874157;10.041966 50.87429;10.04249 50.87446;10.042652 50.87451;10.043507 50.87475;10.044005 50.875195;10.044633 50.876;10.046277 50.876938;10.046758 50.877094;10.047192 50.8772;10.048168 50.877483;10.048929 50.877922;10.050781 50.87864;10.051833 50.87901;10.052312 50.879345;10.052862 50.87955;10.053914 50.879845;10.054921 50.88005;10.05596 50.880016;10.056057 50.880074;10.056228 50.88018;10.055684 50.880894;10.056174 50.881042;10.057272 50.881393;10.058366 50.882023;10.058845 50.88246;10.058911 50.882767;10.058339 50.88275;10.057622 50.882908;10.05684 50.88324;10.056724 50.88353;10.05715 50.884365;10.0570345 50.884552;10.057277 50.885353;10.05808 50.88528;10.05817 50.8856;10.059526 50.88546;10.059916 50.885532;10.060007 50.88565;10.059568 50.88581;10.058464 50.886097;10.057474 50.886223;10.057083 50.886337;10.056621 50.88667;10.057923 50.88727;10.056361 50.88725;10.056177 50.88738;10.056882 50.88808;10.058452 50.88953;10.058681 50.889793;10.058677 50.889965;10.057639 50.890514;10.057457 50.89025;10.05702 50.890427;10.0563755 50.890625;10.055037 50.89119;10.053794 50.891533;10.053424 50.891777;10.053094 50.892532;10.052931 50.892765;10.052702 50.892776;10.052544 50.892456;10.052481 50.89192;10.052904 50.891163;10.053894 50.89069;10.053281 50.8899;10.051 50.890705;10.049851 50.890965;10.049528 50.890903;10.048661 50.890507;10.048044 50.890186;10.04872 50.889072;10.047902 50.888844;10.04758 50.8891;10.04437 50.891674;10.043675 50.89188;10.043023 50.892075;10.042419 50.89244;10.042086 50.892624;10.041657 50.892796;10.041379 50.89289;10.0416975 50.8933;10.042156 50.893375;10.042888 50.893555;10.043347 50.893642;10.044056 50.893875;10.044996 50.894142;10.044762 50.894432;10.045679 50.894756;10.046271 50.895065;10.046634 50.895386;10.046862 50.895676;10.046699 50.895893;10.046444 50.89614;10.04617 50.89598;10.046033 50.896114;10.045974 50.89617;10.04683 50.896507;10.046866 50.89751;10.047737 50.89766;10.049114 50.89778;10.048536 50.89804;10.049201 50.898087;10.04941 50.89794;10.050669 50.89838;10.050818 50.898476;10.050908 50.898678;10.050959 50.89976;10.050224 50.899845;10.049648 50.899956;10.049567 50.899998;10.049369 50.9001;10.048219 50.90021;10.047902 50.899998;10.047711 50.899887;10.047199 50.900047;10.046559 50.899998;10.046144 50.899998;10.045832 50.900097;10.045533 50.900227;10.043061 50.901127;10.042898 50.901325;10.042918 50.9015;10.042755 50.901573;10.042663 50.901585;10.042505 50.901512;10.04239 50.90141;10.042461 50.901325;10.04237 50.901222;10.042118 50.901165;10.041934 50.90116;10.041749 50.901234;10.041564 50.901363;10.041149 50.901436;10.040416 50.90136;10.040619 50.90153;10.040709 50.901722;10.0409155 50.90178;10.04096 50.901867;10.040865 50.90201;10.040149 50.902355;10.039341 50.902637;10.038441 50.902954;10.037797 50.903095;10.037241 50.90331;10.03733 50.903423;10.037629 50.903572;10.037834 50.90367;10.038269 50.90379;10.039359 50.90443;10.039335 50.904533;10.039012 50.90468;10.038461 50.90453;10.038189 50.904526;10.037842 50.9046;10.037562 50.9048;10.036743 50.90588;10.036603 50.905937;10.036601 50.90617;10.036646 50.90624;10.036873 50.90634;10.036986 50.90643;10.035848 50.90722;10.035662 50.907364;10.035546 50.90752;10.034573 50.908066;10.034063 50.908413;10.033899 50.90861;10.033898 50.90877;10.034008 50.908947;10.034846 50.909718;10.034846 50.90979;10.034683 50.909946;10.034474 50.91005;10.03422 50.91009',
'9.992703 51.041448;9.964509 51.038245;9.925777 50.955877;9.927347 50.904354;9.97285978598891 50.9068158141545;9.971418 50.907146;9.971165 50.90742;9.9699 50.90999;9.968248 50.91097;9.968816 50.91227;9.968952 50.912777;9.969523 50.9134;9.970414 50.914467;9.971079 50.915062;9.972187 50.91583;9.9725895 50.916107;9.97346 50.916656;9.976208 50.91782;9.977766 50.918514;9.978867 50.919125;9.979164 50.91929;9.980127 50.920273;9.980423 50.92046;9.981801 50.919827;9.982235 50.920406;9.983401 50.92181;9.983239 50.92194;9.985644 50.924545;9.984564 50.925022;9.985319 50.925907;9.98536 50.927975;9.987747 50.927834;9.987718 50.929207;9.987606 50.92928;9.986596 50.929092;9.986892 50.930134;9.987694 50.930885;9.988289 50.93119;9.98907 50.93128;9.989069 50.93144;9.988446 50.93278;9.988057 50.932766;9.98721 50.93255;9.987185 50.933243;9.988101 50.93371;9.990005 50.933697;9.990074 50.933567;9.990463 50.933567;9.991517 50.93383;9.992047 50.93409;9.991379 50.93468;9.991608 50.934814;9.99179 50.93497;9.991296 50.93538;9.990407 50.935043;9.989521 50.934853;9.989384 50.934723;9.988719 50.934387;9.988238 50.934345;9.9881115 50.93439;9.988029 50.93442;9.987846 50.934486;9.986791 50.93398;9.986776 50.933624;9.986771 50.933517;9.985945 50.933067;9.985716 50.93311;9.985144 50.932835;9.98441 50.93253;9.98425 50.932297;9.983814 50.93224;9.983334 50.93221;9.983172 50.93241;9.982896 50.932438;9.982805 50.931976;9.982073 50.931915;9.981497 50.932293;9.979846 50.93203;9.978931 50.93197;9.978334 50.93197;9.976521 50.932198;9.975786 50.93211;9.973522 50.931953;9.972761 50.931873;9.970877 50.932533;9.967836 50.93391;9.967755 50.93395;9.96725 50.93406;9.966792 50.93406;9.966218 50.933956;9.96585 50.93377;9.965326 50.933292;9.965166 50.932972;9.964866 50.932785;9.964386 50.93261;9.963767 50.93229;9.963698 50.932045;9.963839 50.930683;9.964278 50.930164;9.964782 50.929863;9.96546 50.929813;9.965746 50.92979;9.966459 50.929764;9.966299 50.92907;9.966048 50.928764;9.965436 50.92834;9.965063 50.928085;9.962107 50.926617;9.961901 50.926502;9.961768 50.925488;9.961356 50.924927;9.96067 50.924114;9.959296 50.92333;9.958708 50.923073;9.957553 50.92256;9.956157 50.922195;9.955492 50.9223;9.955147 50.922295;9.9543 50.921833;9.950671 50.92343;9.950326 50.923805;9.949754 50.924194;9.949752 50.92495;9.949583 50.927334;9.949811 50.927464;9.950248 50.927437;9.951847 50.92691;9.9520855 50.92683;9.953001 50.92741;9.953181 50.92764;9.953345 50.92785;9.953456 50.92832;9.955333 50.930134;9.955423 50.93044;9.955103 50.930496;9.954916 50.931797;9.955144 50.931915;9.955279 50.932537;9.955784 50.933044;9.956448 50.93345;9.95663 50.933796;9.956434 50.93476;9.95635 50.93517;9.955751 50.93566;9.955499 50.93604;9.955407 50.9363;9.954902 50.936455;9.955198 50.937267;9.954901 50.937294;9.953523 50.93761;9.952813 50.937912;9.952673 50.9382;9.952144 50.938374;9.952008 50.938446;9.952232 50.9404;9.950946 50.94044;9.95145 50.941166;9.950647 50.94079;9.950441 50.940903;9.950041 50.944405;9.9502125 50.944416;9.952357 50.94455;9.952425 50.944233;9.952266 50.94415;9.953048 50.943993;9.953367 50.944077;9.954194 50.94402;9.954331 50.943874;9.955067 50.94382;9.955317 50.943966;9.956282 50.94397;9.956352 50.943256;9.957453 50.943203;9.957501 50.942986;9.958991 50.943058;9.959081 50.94336;9.959595 50.943367;9.960482 50.943367;9.960528 50.943108;9.961148 50.943092;9.96156 50.94308;9.9617405 50.943214;9.961836 50.943283;9.962776 50.94301;9.962796 50.942867;9.962823 50.942677;9.964133 50.942406;9.964292 50.942535;9.964361 50.942593;9.965235 50.942387;9.965946 50.94222;9.965946 50.942062;9.965947 50.94194;9.967324 50.941467;9.967587 50.94159;9.967805 50.94169;9.968127 50.941517;9.968493 50.941326;9.971657 50.942142;9.972207 50.94252;9.974752 50.94325;9.975186 50.943336;9.975302 50.94325;9.9753275 50.941975;9.976406 50.942062;9.977003 50.94202;9.977897 50.94179;9.9782505 50.94168;9.97919 50.941383;9.979688 50.941216;9.979872 50.94097;9.980311 50.94087;9.980815 50.94068;9.982147 50.939095;9.983113 50.93954;9.983249 50.9396;9.985517 50.940746;9.98703 50.941418;9.987672 50.941547;9.988247 50.94116;9.988818 50.94107;9.989463 50.941074;9.99187 50.94082;9.991502 50.941353;9.990859 50.942;9.989687 50.94294;9.991017 50.94342;9.99437 50.940823;9.994507 50.940678;9.994665 50.94051;9.995061 50.940662;9.996805 50.940086;9.99855 50.939297;9.998207 50.9387;9.998023 50.938267;9.998666 50.937893;9.998414 50.937675;9.99876 50.9374;9.999351 50.936687;9.99956 50.93663;9.999902 50.93666;9.999999 50.93672;10.000222 50.936867;10.000807 50.93758;10.001125 50.937798;10.002127 50.938396;10.002787 50.93895;10.002917 50.9393;10.003046 50.939865;10.003109 50.94014;10.003267 50.940372;10.003287 50.940563;10.003401 50.940666;10.00356 50.94068;10.003767 50.94068;10.00393 50.940594;10.004235 50.94025;10.004701 50.939903;10.011221 50.93482;10.013384 50.934658;10.013659 50.93476;10.013954 50.93498;10.014387 50.93524;10.014798 50.935448;10.015049 50.935535;10.015616 50.93606;10.017232 50.93698;10.017393 50.937115;10.017368 50.9372;10.017424 50.93756;10.017322 50.937748;10.016835 50.938625;10.016624 50.93889;10.016441 50.938957;10.016256 50.939175;10.016254 50.93932;10.016414 50.939465;10.018269 50.94033;10.019553 50.94081;10.020195 50.94099;10.020861 50.94108;10.021207 50.941067;10.021577 50.94098;10.021946 50.94092;10.023635 50.941063;10.023989 50.941147;10.024164 50.94128;10.02427 50.941822;10.0243435 50.942177;10.024434 50.942524;10.024503 50.942974;10.024495 50.943806;10.027375 50.943455;10.027422 50.943134;10.0276575 50.942497;10.027754 50.94212;10.027987 50.9418;10.028823 50.940914;10.029009 50.940716;10.028297 50.940395;10.028048 50.940174;10.028243 50.940014;10.028395 50.939884;10.028512 50.939655;10.028724 50.939034;10.028864 50.93889;10.029048 50.938843;10.029232 50.93883;10.029346 50.938774;10.029486 50.938583;10.029587 50.93754;10.029568 50.937103;10.030302 50.937206;10.030395 50.937283;10.030347 50.9375;10.030182 50.937878;10.030135 50.93809;10.030155 50.93825;10.030246 50.93837;10.030774 50.938587;10.031599 50.938793;10.031944 50.93884;10.0320835 50.93878;10.032268 50.938652;10.032635 50.938755;10.034057 50.93908;10.034593 50.93837;10.036041 50.938637;10.0385685 50.938995;10.040429 50.93922;10.04158 50.939236;10.041994 50.93921;10.043006 50.939228;10.04611 50.939064;10.047263 50.938908;10.047818 50.93879;10.048462 50.938652;10.049361 50.938408;10.050139 50.938805;10.051216 50.939156;10.051882 50.93929;10.052617 50.93935;10.053515 50.939293;10.053723 50.93925;10.056314 50.94026;10.05645 50.940365;10.056469 50.941105;10.057087 50.941223;10.057546 50.9414;10.058005 50.941444;10.058169 50.941315;10.060463 50.941856;10.060508 50.942017;10.060668 50.942223;10.060941 50.942383;10.061743 50.942703;10.062292 50.943005;10.0624485 50.94309;10.062523 50.94313;10.062934 50.943462;10.063231 50.94374;10.063298 50.94393;10.063318 50.944176;10.063387 50.94428;10.064187 50.944645;10.064393 50.944805;10.064552 50.945038;10.064642 50.945286;10.06455 50.945415;10.064236 50.945625;10.061497 50.947453;10.061955 50.94768;10.061954 50.947773;10.061813 50.947884;10.06156 50.94791;10.060874 50.947807;10.060733 50.948044;10.060364 50.94801;10.058985 50.947685;10.058447 50.947487;10.057107 50.946922;10.056064 50.94675;10.05573 50.946705;10.053869 50.946594;10.053662 50.94652;10.053571 50.946377;10.053505 50.946014;10.050468 50.946117;10.049386 50.946087;10.048607 50.946026;10.047663 50.945892;10.0475855 50.946064;10.047558 50.946213;10.047521 50.946342;10.048049 50.9464;10.048066 50.947403;10.047971 50.947475;10.047697 50.94749;10.045107 50.94738;10.0449095 50.94873;10.044134 50.94872;10.042878 50.948704;10.042981 50.948833;10.043133 50.9491;10.043489 50.950024;10.043924 50.95018;10.044594 50.950283;10.045358 50.95055;10.045732 50.95071;10.045959 50.950817;10.046004 50.95097;10.045867 50.951218;10.04492 50.95231;10.044575 50.952408;10.044256 50.95239;10.043831 50.95232;10.043725 50.95257;10.043527 50.952896;10.043253 50.953487;10.043228 50.95356;10.0430565 50.954056;10.042875 50.95436;10.042823 50.95519;10.042844 50.955677;10.04286 50.956093;10.042675 50.956547;10.042465 50.956688;10.041958 50.957047;10.041586 50.95735;10.041378 50.95761;10.041238 50.957684;10.040869 50.957783;10.038786 50.958202;10.038442 50.958252;10.037047 50.95829;10.036103 50.958332;10.03565 50.958336;10.035137 50.958344;10.032485 50.95899;10.032025 50.959145;10.034995 50.961433;10.035474 50.961887;10.036089 50.96253;10.036865 50.963505;10.03717 50.964012;10.037295 50.964222;10.037589 50.964607;10.03816 50.96522;10.038936 50.965862;10.040834 50.9672;10.041362 50.967464;10.04048 50.96832;10.040108 50.968796;10.039969 50.968914;10.039832 50.968987;10.039279 50.96907;10.0384245 50.9693;10.037801 50.969513;10.037524 50.969658;10.037295 50.969845;10.037036 50.970222;10.036897 50.970325;10.036643 50.970394;10.0365 50.970417;10.036044 50.970493;10.035653 50.97051;10.035493 50.97042;10.03538 50.970276;10.035149 50.970375;10.034548 50.97078;10.034844 50.971012;10.03399 50.971592;10.0336 50.97143;10.033345 50.971573;10.033229 50.971764;10.033226 50.972095;10.033686 50.97214;10.0338 50.972214;10.033863 50.972897;10.033173 50.972923;10.033147 50.973404;10.033628 50.973507;10.033485 50.97391;10.033349 50.974;10.033048 50.97407;10.032658 50.973866;10.031713 50.97421;10.031849 50.97444;10.030856 50.974815;10.03049 50.974552;10.029822 50.974712;10.030093 50.975136;10.02908 50.97552;10.028712 50.975315;10.028321 50.975475;10.027813 50.975544;10.027787 50.975895;10.026613 50.976124;10.026409 50.975803;10.025211 50.976;10.025185 50.976364;10.024931 50.97642;10.024746 50.97655;10.024627 50.97697;10.024076 50.976955;10.023677 50.977695;10.024137 50.977867;10.023925 50.978317;10.023717 50.97855;10.023235 50.9784;10.022218 50.978924;10.022515 50.979214;10.021891 50.979588;10.021408 50.979412;10.021339 50.979645;10.021153 50.979847;10.020967 50.979992;10.020715 50.97996;10.02051 50.97983;10.019932 50.980103;10.019562 50.980366;10.019836 50.980568;10.019551 50.981667;10.019431 50.98194;10.020418 50.982475;10.020782 50.982674;10.021083 50.98253;10.0217705 50.98292;10.022341 50.983307;10.022684 50.983597;10.022315 50.983738;10.02316 50.984364;10.023575 50.984234;10.023986 50.984585;10.024098 50.984787;10.024211 50.985096;10.023774 50.985123;10.023607 50.985947;10.023606 50.98605;10.023925 50.98618;10.023647 50.986515;10.023414 50.986904;10.022771 50.986816;10.022678 50.98702;10.022671 50.98776;10.023083 50.98779;10.023033 50.988632;10.022503 50.988678;10.022245 50.989475;10.02238 50.989563;10.022216 50.989983;10.022257 50.99046;10.021913 50.990505;10.022067 50.9912;10.022504 50.991276;10.022455 50.99168;10.02236 50.99197;10.022268 50.992104;10.021761 50.992058;10.021388 50.992622;10.021156 50.99304;10.021083 50.993286;10.021289 50.993374;10.021126 50.993694;10.021101 50.99388;10.02119 50.99413;10.021833 50.994656;10.02199 50.994827;10.02208 50.995323;10.022214 50.995556;10.022603 50.99582;10.023266 50.99617;10.023402 50.99623;10.024209 50.99661;10.024873 50.996754;10.025103 50.996887;10.025169 50.99709;10.025253 50.998077;10.025452 50.998737;10.026013 50.99946;10.026471 51;10.02697 51.000584;10.0271635 51.001312;10.027379 51.001724;10.027843 51.002026;10.02791 51.00211;10.028362 51.002693;10.028456 51.00303;10.028137 51.004066;10.028478 51.004158;10.02794 51.00613;10.028011 51.00682;10.027785 51.006947;10.030274 51.009247;10.03052 51.009132;10.0306635 51.009235;10.031506 51.009834;10.031686 51.01008;10.032027 51.010387;10.032341 51.010517;10.032533 51.010597;10.032526 51.010902;10.033214 51.01114;10.034284 51.011646;10.035037 51.011803;10.035198 51.011932;10.035485 51.011833;10.035686 51.01205;10.036377 51.012135;10.036822 51.012253;10.037105 51.012356;10.037431 51.01237;10.038282 51.012596;10.038238 51.01288;10.0397005 51.01299;10.041124 51.01305;10.041332 51.012794;10.04227 51.012672;10.04364 51.01231;10.044254 51.01212;10.04427 51.0124;10.045188 51.012203;10.045555 51.01219;10.046063 51.012337;10.046789 51.012665;10.047159 51.012512;10.047968 51.0128;10.048882 51.012985;10.050919 51.012947;10.051261 51.01319;10.054337 51.01302;10.054321 51.01275;10.057541 51.0125;10.057597 51.012756;10.0585316161439 51.012558571396;9.992703 51.041448-10.0597504857315 51.0120236604713;10.060382 51.0117;10.0613740332412 51.0113111533184;10.0597504857315 51.0120236604713-10.0626583549887 51.0107475181761;10.062968 51.010525;10.0633884376681 51.0104271153988;10.0626583549887 51.0107475181761-10.0636884544641 51.0102954505649;10.0638485 51.01016;10.064921 51.00942;10.065205 51.009396;10.0655337055632 51.0094856469718;10.0636884544641 51.0102954505649-10.031555 50.91015;10.031397 50.910107;10.0312027605326 50.9099716209773;10.0331286072632 50.9100757911932;10.031555 50.91015-10.003948 50.921253;10.003628 50.921238;10.003399 50.92111;10.002901 50.920727;10.002447 50.92035;10.002104 50.920204;10.001531 50.9201;10.000592 50.92001;9.999998 50.919914;9.999629 50.91986;9.998745 50.919537;9.997485 50.91868;9.996774 50.9181;9.995287 50.917145;9.994255 50.916626;9.993409 50.9162;9.992791 50.915535;9.991669 50.91481;9.990252 50.91348;9.989451 50.91287;9.986245 50.91048;9.98604 50.910072;9.985891 50.909496;9.98537190774022 50.9074926023968;10.0293839197889 50.9098732387801;10.029331 50.909878;10.028431 50.910107;10.025285 50.91161;10.024751 50.91191;10.024564 50.912125;10.02456 50.912395;10.024625 50.912575;10.024574 50.912907;10.024408 50.913296;10.024242 50.91357;10.02424 50.913773;10.02435 50.913986;10.024465 50.914043;10.024189 50.914146;10.023218 50.914356;10.022619 50.914513;10.022411 50.9146;10.022293 50.914803;10.021854 50.915073;10.02179 50.915165;10.021619 50.91531;10.020834 50.915535;10.019774 50.91573;10.019125 50.915947;10.019034 50.91606;10.018937 50.916424;10.018096 50.9166;10.017227 50.916718;10.016862 50.916843;10.0161705 50.916855;10.015505 50.916836;10.015146 50.916904;10.015126 50.91697;10.014991 50.91766;10.014881 50.91803;10.014631 50.919247;10.014133 50.91976;10.014026 50.920246;10.013911 50.920303;10.013727 50.920303;10.012722 50.919876;10.012468 50.919964;10.011828 50.919743;10.011303 50.91978;10.010978 50.919884;10.010603 50.919884;10.009947 50.919956;10.008749 50.920025;10.007958 50.920017;10.007323 50.920025;10.006533 50.920517;10.005954 50.920788;10.004319 50.92107;10.003948 50.921253',
'9.766254 51.013746;9.793079 50.899578;9.846509 50.844179;9.890762 50.844311;9.927347 50.904354;9.925777 50.955877;9.766254 51.013746',
'9.793079 50.899578;9.668609 50.851026;9.701281 50.74938;9.714825 50.7431;9.793106 50.777277;9.846509 50.844179;9.793079 50.899578',
'9.70629911511998 51.3660757166389;9.705461 51.3659;9.704004 51.36546;9.702441 51.364662;9.702027 51.364388;9.70203 51.364124;9.702425 51.363308;9.702069 51.361996;9.701869 51.36133;9.701919 51.360756;9.702386 51.360046;9.70287 51.359737;9.703406 51.359398;9.703812 51.35896;9.70409 51.35834;9.705125 51.357815;9.705645 51.35746;9.7057705 51.35736;9.706265 51.357033;9.707148 51.35651;9.709067 51.35619;9.710982 51.35604;9.71175 51.355843;9.712087 51.355675;9.712361 51.355476;9.713203 51.353855;9.714387 51.351837;9.716218 51.35054;9.718659 51.349697;9.719107 51.34954;9.719789 51.349148;9.720423 51.348583;9.720664 51.348213;9.720762 51.34806;9.720768 51.347046;9.72102 51.346424;9.721905 51.34527;9.722248 51.344948;9.722879 51.344353;9.723597 51.343437;9.724082 51.342815;9.724509 51.342426;9.725056 51.34193;9.726728 51.34099;9.726887 51.34077;9.727005 51.340237;9.726931 51.339546;9.726874 51.33901;9.726706 51.338833;9.726493 51.338615;9.72629 51.338245;9.726227 51.337738;9.727093 51.336315;9.727835 51.336315;9.728334 51.336132;9.729827 51.3352;9.731321 51.33405;9.732339 51.333076;9.732524 51.33285;9.733213 51.332016;9.733291 51.331917;9.733441 51.3318;9.734607 51.33088;9.736623 51.329018;9.736828 51.328594;9.736819 51.328415;9.736787 51.327717;9.735897 51.32572;9.735719 51.32503;9.735656 51.324112;9.735797 51.32324;9.7358 51.32242;9.735963 51.321644;9.736645 51.320274;9.737394 51.31947;9.738409 51.319202;9.740641 51.31884;9.742381 51.31876;9.743619 51.31889;9.744905 51.318905;9.745376 51.319008;9.74670207132053 51.3201387712127;9.727507 51.347363;9.70629911511998 51.3660757166389-9.64357636331514 51.3193437976779;9.6411043128691 51.3168079022559;9.641101 51.316772;9.640945 51.31645;9.64078425867288 51.3164795821068;9.638526 51.314163;9.642276 51.294856;9.723971 51.175668;9.783934 51.267333;9.75790154271763 51.3042546431196;9.754567 51.303036;9.751186 51.30191;9.74996 51.301502;9.748762 51.30109;9.7484255 51.30071;9.7474575 51.300396;9.747254 51.300648;9.745054 51.29999;9.743968 51.299667;9.743834 51.299255;9.735886 51.29578;9.734865 51.29538;9.734416 51.295254;9.73319 51.29521;9.732822 51.29511;9.731895 51.29471;9.732118 51.294586;9.733975 51.293583;9.73414 51.292877;9.733404 51.292442;9.732915 51.292416;9.732464 51.29257;9.731992 51.292976;9.731622 51.292866;9.731482 51.29282;9.73052 51.292885;9.729885 51.29346;9.729945 51.29377;9.729595 51.29427;9.729103 51.294563;9.729171 51.294655;9.729327 51.294857;9.729653 51.295063;9.73014 51.295567;9.730202 51.2958;9.730036 51.29603;9.729648 51.296207;9.729117 51.296593;9.728952 51.296795;9.728727 51.296886;9.728584 51.296886;9.728217 51.29669;9.727643 51.296665;9.727214 51.296703;9.726458 51.29683;9.72603 51.29684;9.725968 51.29661;9.725046 51.296608;9.724945 51.296757;9.724229 51.296814;9.721674 51.29663;9.721039 51.29677;9.720524 51.296925;9.720332 51.29698;9.719605 51.297318;9.719248 51.297577;9.719399 51.297775;9.7196045 51.297916;9.7195635 51.298058;9.718389 51.298714;9.717004 51.299095;9.715896 51.29963;9.715256 51.3;9.712485 51.3016;9.711377 51.301994;9.709049 51.30302;9.708348 51.30331;9.707196 51.303524;9.705821 51.303886;9.7031355 51.304108;9.701939 51.304234;9.70104 51.304028;9.700181 51.304043;9.699998 51.30409;9.699437 51.304237;9.698645 51.30462;9.697673 51.30504;9.696975 51.30522;9.695614 51.306602;9.695997 51.307003;9.695523 51.307053;9.694867 51.307167;9.694437 51.307293;9.693851 51.307278;9.692993 51.307613;9.692359 51.308006;9.692131 51.308445;9.691319 51.30867;9.689947 51.308857;9.688839 51.30889;9.688758 51.308838;9.688345 51.308567;9.68769 51.30848;9.687374 51.308674;9.686969 51.308376;9.686299 51.308075;9.686182 51.30802;9.686092 51.30822;9.685932 51.308575;9.686965 51.309227;9.687438 51.309437;9.687121 51.309692;9.686018 51.30914;9.685006 51.309063;9.684402 51.309017;9.683834 51.30898;9.68221 51.309048;9.679567 51.30963;9.67947 51.309727;9.679375 51.30982;9.679232 51.30996;9.67891 51.31027;9.678502 51.31075;9.678275 51.31117;9.678294 51.311848;9.678086 51.31275;9.678002 51.312923;9.677472 51.313965;9.676089 51.315464;9.675209 51.31584;9.674238 51.315994;9.673195 51.316494;9.6727705 51.3167;9.6719885 51.316948;9.669787 51.31767;9.669506 51.317482;9.66897 51.317123;9.668397 51.31687;9.667722 51.315983;9.667552 51.315536;9.667367 51.31505;9.666172 51.31499;9.666123 51.31482;9.665881 51.314007;9.66584 51.31387;9.666967 51.313675;9.667224 51.313557;9.667722 51.313335;9.668504 51.312817;9.668251 51.312664;9.668054 51.312546;9.667807 51.312126;9.667763 51.31205;9.666795 51.31181;9.666209 51.311752;9.664896 51.311584;9.663094 51.311607;9.660678 51.31177;9.65937 51.31205;9.657721 51.312767;9.657406 51.312428;9.656434 51.312836;9.655826 51.31314;9.655756 51.31317;9.655649 51.313244;9.654896 51.313725;9.654626 51.313976;9.654603 51.314148;9.654736 51.314545;9.654034 51.31464;9.653967 51.31474;9.653516 51.314724;9.652977 51.314667;9.652458 51.314667;9.652119 51.31472;9.65144 51.314903;9.650108 51.31538;9.649386 51.315605;9.64794 51.315926;9.647984 51.316307;9.647033 51.317097;9.646776 51.317326;9.646006 51.31802;9.645518 51.31846;9.645131 51.31874;9.644589 51.319065;9.644116 51.319233;9.644001 51.319263;9.64357636331514 51.3193437976779',
'9.727507 51.347363;9.74670207132053 51.3201387712127;9.7478 51.321075;9.747664 51.321358;9.748765 51.32212;9.750362 51.32297;9.753414 51.325466;9.754493 51.326145;9.75465 51.32647;9.756085 51.3281;9.756237 51.328465;9.756262 51.32852;9.756622 51.328594;9.759866 51.328995;9.761285 51.329506;9.762388 51.32985;9.765379 51.331043;9.768237 51.332474;9.7684145 51.332813;9.765954 51.33306;9.765187 51.333176;9.764714 51.333286;9.764261 51.33378;9.763897 51.33426;9.763914 51.335403;9.763866 51.335625;9.7638235 51.335815;9.763684 51.336185;9.7634535 51.337097;9.763929 51.33704;9.767084 51.337173;9.768641 51.337036;9.770239 51.33752;9.77123 51.337635;9.771726 51.337425;9.772704 51.33627;9.772681 51.336098;9.7725725 51.335293;9.772194 51.33384;9.772132 51.333603;9.771952 51.332905;9.771465 51.331364;9.771086 51.330685;9.770347 51.329823;9.768911 51.328392;9.76781 51.327374;9.764707 51.325714;9.763878 51.325077;9.763475 51.324512;9.763364 51.324284;9.763545 51.324173;9.764666 51.324966;9.765453 51.32553;9.767343 51.32634;9.769369 51.327023;9.770109 51.327576;9.771995 51.32912;9.77292 51.32888;9.773443 51.32853;9.772386 51.32772;9.771644 51.327423;9.771465 51.327267;9.772348 51.326523;9.772163 51.32643;9.770661 51.3257;9.770618 51.32536;9.770685 51.325245;9.771206 51.324993;9.771908 51.324432;9.772025 51.3244;9.772201 51.32436;9.772493 51.324703;9.772625 51.324856;9.77348 51.325676;9.774333 51.32633;9.774538 51.32616;9.7746315 51.32607;9.774828 51.32572;9.774893 51.32531;9.774835 51.32485;9.77445 51.32441;9.774223 51.324;9.773709 51.32291;9.773507 51.322533;9.773165 51.322094;9.772918 51.3215;9.772652 51.320858;9.77227 51.320145;9.772192 51.31935;9.772258 51.319073;9.772365 51.318462;9.772389 51.318356;9.772046 51.318333;9.771919 51.318325;9.771128 51.31827;9.769428 51.311527;9.768877 51.30915;9.768499 51.307697;9.768054 51.30668;9.767695 51.306526;9.767152 51.30641;9.765576 51.306206;9.762988 51.30571;9.761138 51.305397;9.7599 51.304985;9.75790154271763 51.3042546431196;9.783934 51.267333;9.861762 51.255606;9.893197 51.325125;9.727507 51.347363',
'9.92435477325699 51.3635265954085;9.893197 51.325125;9.861762 51.255606;9.886248 51.175285;10.030553 51.211957;10.0476439805588 51.2527078312145;10.047562 51.252975;10.047395 51.253258;10.047148 51.253445;10.047656 51.25396;10.0483423380677 51.2543729579678;10.0501790778361 51.2587523832459;10.050074 51.25891;10.049724 51.259205;10.04952 51.25933;10.0492115 51.259346;10.048518 51.259304;10.04811 51.25925;10.047761 51.259098;10.047598 51.259098;10.047393 51.2592;10.047289 51.259377;10.047287 51.259747;10.047326 51.259953;10.04755 51.26021;10.047733 51.260323;10.047835 51.260426;10.047648 51.260784;10.0476885 51.260914;10.047893 51.26104;10.047911 51.261185;10.047664 51.261517;10.047352 51.262142;10.047105 51.262486;10.046734 51.262802;10.046548 51.263073;10.046568 51.26329;10.046728 51.26384;10.046683 51.264454;10.046785 51.264557;10.046989 51.26458;10.048318 51.2646;10.048644 51.264713;10.049256 51.26488;10.050033 51.26505;10.050277 51.265076;10.050501 51.26518;10.050988 51.265514;10.05172 51.266167;10.051902 51.26641;10.052102 51.266792;10.052286 51.267025;10.052712 51.26741;10.052979 51.267334;10.053348 51.26713;10.0536199548994 51.2669566287516;10.057897844325 51.2771566023186;10.057894 51.27716;10.057383 51.27748;10.057095 51.27757;10.056748 51.27777;10.056376 51.277924;10.056091 51.27799;10.055601 51.278023;10.055171 51.278088;10.054966 51.27819;10.054204 51.27899;10.053999 51.279057;10.053835 51.27904;10.052693 51.278683;10.052429 51.27849;10.051739 51.277706;10.051617 51.27763;10.0508 51.27763;10.04988 51.277626;10.049533 51.27765;10.049246 51.277725;10.047362 51.278515;10.0465 51.27873;10.045353 51.27902;10.043796 51.279602;10.042893 51.28002;10.042421 51.280212;10.041869 51.28034;10.04148 51.28036;10.04101 51.280334;10.040274 51.280193;10.038621 51.27974;10.037216 51.279278;10.036502 51.27915;10.036236 51.279144;10.035539 51.279465;10.035396 51.279465;10.035314 51.279373;10.035481 51.278915;10.035257 51.278797;10.034155 51.278603;10.032868 51.278435;10.032194 51.27829;10.0315 51.2781;10.030093 51.2778;10.029616 51.278755;10.029063 51.278744;10.0289 51.27883;10.028754 51.279076;10.028264 51.2791;10.027301 51.279427;10.0262575 51.279617;10.026344 51.280357;10.026372 51.2806;10.024141 51.281094;10.023549 51.28118;10.0232 51.281193;10.022915 51.281155;10.021691 51.280792;10.021263 51.280754;10.020956 51.280754;10.021016 51.280983;10.020933 51.281223;10.020457 51.281963;10.020349 51.282616;10.020285 51.282764;10.020164 51.282795;10.0170145 51.28299;10.013477 51.283173;10.012966 51.283154;10.012638 51.28318;10.012351 51.28328;10.012065 51.28342;10.010917 51.28388;10.009462 51.284504;10.009114 51.28468;10.007961 51.28543;10.007552 51.285645;10.007019 51.285873;10.005686 51.28637;10.004579 51.28686;10.0043745 51.286915;10.004191 51.286915;10.003394 51.28673;10.00262 51.28646;10.001785 51.286064;10.001249 51.28605;10.000661 51.286034;9.999998 51.285934;9.999883 51.28592;9.998784 51.285503;9.997407 51.28492;9.995596 51.28407;9.995526 51.284054;9.995414 51.28403;9.995127 51.28407;9.994614 51.284195;9.993448 51.284523;9.991779 51.28539;9.991578 51.285496;9.991414 51.285545;9.991312 51.285545;9.990924 51.28543;9.9905405 51.285164;9.990336 51.285126;9.990131 51.285122;9.989858 51.28515;9.989641 51.285168;9.988898 51.28519;9.988803 51.285164;9.988563 51.28488;9.98834 51.284733;9.986552 51.284157;9.986444 51.28412;9.986037 51.28393;9.985672 51.28366;9.985284 51.283493;9.984979 51.283417;9.983815 51.283333;9.983243 51.283237;9.982734 51.283226;9.982284 51.28331;9.980868 51.283726;9.978244 51.284714;9.977998 51.28478;9.9772625 51.28484;9.975669 51.28488;9.975281 51.284866;9.975098 51.284725;9.974816 51.284367;9.974694 51.28433;9.974162 51.28435;9.973183 51.284325;9.972772 51.284386;9.972404 51.28451;9.972232 51.2846;9.973649 51.286137;9.974121 51.28664;9.974281 51.286873;9.974362 51.287052;9.974539 51.287693;9.974879 51.288486;9.975082 51.28879;9.975446 51.28923;9.976213 51.290077;9.976738 51.290707;9.976961 51.291027;9.977039 51.291397;9.9770775 51.291637;9.977075 51.292023;9.977031 51.292206;9.976887 51.29246;9.976722 51.292664;9.976432 51.292908;9.975961 51.293186;9.97551 51.293377;9.975141 51.293476;9.97287 51.293877;9.971701 51.29419;9.9711075 51.294434;9.970759 51.294674;9.970552 51.294876;9.970385 51.29513;9.970065 51.296078;9.969777 51.29692;9.969691 51.29748;9.969688 51.297813;9.969746 51.298134;9.969862 51.298397;9.970128 51.29865;9.970185 51.2994;9.970043 51.299767;9.969669 51.3;9.969202 51.300213;9.968543 51.30048;9.968024 51.30063;9.967547 51.30078;9.966641 51.300976;9.966097 51.30121;9.965663 51.301517;9.964989 51.3021;9.964794 51.302273;9.963562 51.3031;9.963128 51.303436;9.960949 51.304363;9.960178 51.30464;9.959816 51.304752;9.959603 51.304787;9.959363 51.30482;9.958822 51.304832;9.957854 51.304752;9.957021 51.30465;9.955942 51.30446;9.954866 51.30424;9.953966 51.30401;9.952643 51.30363;9.949858 51.302906;9.948066 51.30237;9.947706 51.302258;9.947008 51.302155;9.9464 51.302135;9.94588 51.30226;9.945379 51.302567;9.944418 51.30338;9.943757 51.303825;9.943077 51.304104;9.940877 51.30481;9.9404 51.30502;9.93992 51.30541;9.939344 51.306156;9.938313 51.30715;9.93806 51.307472;9.938123 51.307785;9.938334 51.30799;9.938453 51.30811;9.93889 51.308376;9.939415 51.308697;9.941152 51.30995;9.941573 51.310406;9.941881 51.310886;9.94225 51.311836;9.942467 51.312103;9.942869 51.312447;9.943962 51.313145;9.944338 51.31336;9.944486 51.31352;9.944617 51.31361;9.945164 51.313995;9.946098 51.31471;9.947395 51.31558;9.948238 51.31626;9.948593 51.31666;9.948878 51.31709;9.949052 51.31744;9.949156 51.317905;9.949105 51.318314;9.948962 51.31878;9.948478 51.31924;9.947791 51.320057;9.947647 51.320175;9.947128 51.320602;9.946831 51.320797;9.947052 51.320953;9.947537 51.321762;9.947594 51.32187;9.947843 51.32233;9.947992 51.322823;9.948089 51.323826;9.948038 51.324165;9.947672 51.32449;9.946861 51.32583;9.947131 51.326;9.94744 51.32624;9.947482 51.326424;9.947435 51.326664;9.94716 51.326874;9.946704 51.3271;9.945889 51.32736;9.945616 51.327484;9.945319 51.32771;9.944544 51.328213;9.944268 51.32852;9.944148 51.329044;9.944246 51.329876;9.944395 51.33044;9.944787 51.33129;9.944592 51.332123;9.944266 51.332714;9.943805 51.333374;9.943746 51.33422;9.943422 51.334614;9.942274 51.335278;9.941875 51.335506;9.940683 51.335327;9.9399185 51.335297;9.939375 51.33536;9.938977 51.336292;9.937121 51.336746;9.935445 51.33716;9.935207 51.3372;9.935 51.337234;9.934133 51.33743;9.933679 51.337555;9.933115 51.33765;9.932844 51.33776;9.932591 51.337944;9.932768 51.338085;9.932312 51.33839;9.931449 51.338852;9.931367 51.3389;9.929719 51.3399;9.931122 51.34091;9.930825 51.34108;9.930665 51.341263;9.930661 51.341473;9.930957 51.342705;9.931445 51.343533;9.931647 51.343872;9.931769 51.344078;9.932758 51.34561;9.932801 51.34572;9.932107 51.346622;9.931814 51.34666;9.931319 51.346687;9.931044 51.34687;9.929902 51.347805;9.930351 51.34785;9.930506 51.34796;9.930615 51.348278;9.930698 51.34874;9.930669 51.35061;9.93054 51.350853;9.930503 51.350925;9.930296 51.3511;9.930114 51.35125;9.927717 51.353012;9.927045 51.352753;9.925639 51.35326;9.925548 51.353294;9.925584 51.35366;9.92589 51.356945;9.925913 51.357193;9.925958 51.358524;9.925926 51.359158;9.925869 51.35939;9.925753 51.359863;9.925231 51.36157;9.924364 51.363506;9.92435477325699 51.3635265954085',
'9.783934 51.267333;9.723971 51.175668;9.72613 51.152256;9.774362 51.083371;9.858046 51.116934;9.886248 51.175285;9.861762 51.255606;9.783934 51.267333',
'10.1772185506984 51.2095160162432;10.1414335245127 51.1449794489928;10.143258 51.14489;10.145003 51.14472;10.145345 51.14475;10.146471 51.144604;10.146905 51.145283;10.147179 51.145573;10.149241 51.1465;10.151188 51.147484;10.152011 51.148438;10.15249 51.14891;10.154006 51.14854;10.1552925 51.14828;10.157999 51.148026;10.159235 51.149036;10.159304 51.149086;10.16038 51.14982;10.163059 51.15115;10.163605 51.151093;10.164616 51.15148;10.165452 51.15185;10.165748 51.15198;10.1658945 51.152046;10.165992 51.152092;10.164862 51.154053;10.1659 51.15395;10.166405 51.153847;10.167282 51.1535;10.168019 51.153076;10.169331 51.151974;10.170576 51.151073;10.171277 51.15071;10.172164 51.150257;10.174262 51.148895;10.17539 51.148243;10.175829 51.147923;10.1762905 51.147472;10.176497 51.147156;10.176635 51.146835;10.176771 51.146084;10.176791 51.143864;10.177133 51.141834;10.177202 51.1417;10.177387 51.14166;10.177854 51.141666;10.178933 51.141685;10.179253 51.140903;10.181538 51.141106;10.181699 51.1408;10.184948 51.141155;10.185134 51.141174;10.186082 51.138405;10.185685 51.138306;10.183955 51.137943;10.183584 51.137814;10.183562 51.13774;10.184136 51.136665;10.184182 51.136463;10.18413 51.136333;10.184079 51.136208;10.184067 51.136044;10.185466 51.1324;10.184913 51.132343;10.18369 51.1321;10.181453 51.131535;10.180151 51.131245;10.179767 51.13116;10.181658 51.129444;10.179926 51.128967;10.179002 51.128647;10.178795 51.128532;10.179623 51.12772;10.17923 51.127605;10.179072 51.12756;10.180291 51.126648;10.181926 51.12563;10.183931 51.124615;10.184924 51.124424;10.185131 51.12434;10.185834 51.12371;10.186076 51.1235;10.186767 51.12305;10.189256 51.122047;10.189579 51.121876;10.189739 51.1217;10.189669 51.121525;10.189 51.120712;10.188908 51.120396;10.188217 51.119976;10.188263 51.119583;10.188581 51.118176;10.188604 51.11764;10.188556 51.117046;10.189202 51.116467;10.189731 51.115738;10.190099 51.115593;10.190237 51.11536;10.190629 51.115086;10.190652 51.11481;10.191505 51.114536;10.191596 51.114464;10.1916895 51.114273;10.192126 51.11429;10.192357 51.114258;10.193601 51.113564;10.193879 51.113445;10.19411 51.113476;10.194479 51.11372;10.194964 51.113213;10.195194 51.112907;10.195564 51.11281;10.196091 51.112778;10.19646 51.112633;10.196898 51.112343;10.197221 51.112183;10.197472 51.112152;10.197844 51.112225;10.198126 51.112415;10.198212 51.112473;10.198466 51.11257;10.198858 51.112633;10.199458 51.112804;10.199805 51.11295;10.199921 51.11315;10.199998 51.11321;10.200058 51.113255;10.200521 51.11344;10.200798 51.1137;10.201606 51.1146;10.201766 51.114834;10.201814 51.114906;10.202 51.115063;10.2023 51.11518;10.204583 51.115814;10.204653 51.11599;10.20659 51.11641;10.206846 51.116627;10.207008 51.116875;10.206937 51.117237;10.206685 51.117817;10.206641 51.118076;10.207147 51.118195;10.207426 51.11818;10.207957 51.11802;10.208302 51.117947;10.20874 51.1179;10.209061 51.11793;10.209177 51.11809;10.208948 51.118584;10.208597 51.118996;10.20782 51.119904;10.207244 51.120224;10.207058 51.120457;10.206584 51.121742;10.206417 51.122192;10.209392 51.122715;10.20937 51.123177;10.209302 51.12461;10.209474 51.125877;10.209148 51.125877;10.208647 51.125908;10.206331 51.126034;10.206146 51.126152;10.205455 51.127182;10.205432 51.127525;10.20571 51.128166;10.205688 51.12837;10.204769 51.130123;10.203801 51.13166;10.203548 51.132393;10.2035265 51.132767;10.20362 51.133175;10.203829 51.133724;10.204199 51.134434;10.203692 51.13458;10.204315 51.13507;10.204361 51.135246;10.20413 51.13542;10.203601 51.135593;10.204066 51.13637;10.204146 51.136505;10.204064 51.13661;10.204155 51.13677;10.203718 51.13706;10.203949 51.137234;10.204341 51.137466;10.204895 51.137566;10.205634 51.137638;10.206329 51.137955;10.206743 51.138203;10.207019 51.138535;10.207551 51.13933;10.207782 51.139595;10.208105 51.13987;10.208474 51.140102;10.208936 51.14029;10.209882 51.140404;10.210321 51.140564;10.210044 51.14101;10.209767 51.14123;10.209398 51.141376;10.210508 51.1422;10.21053 51.14229;10.210414 51.14245;10.209309 51.14335;10.209647 51.143795;10.209057 51.144073;10.2087555 51.14393;10.208365 51.143696;10.208225 51.143406;10.207347 51.143936;10.207212 51.144024;10.20463 51.145615;10.203157 51.146572;10.201843 51.147514;10.201568 51.14779;10.201452 51.147934;10.201015 51.149445;10.20083 51.14959;10.200325 51.149864;10.200511 51.15034;10.200765 51.150806;10.201337 51.151394;10.2017145 51.151775;10.202566 51.15233;10.204342 51.153023;10.205268 51.153458;10.206099 51.15392;10.20679 51.15437;10.207229 51.154587;10.207599 51.154892;10.207784 51.15528;10.207807 51.15579;10.207739 51.15595;10.207277 51.156357;10.207218 51.156834;10.207187 51.15708;10.207071 51.15759;10.207258 51.15857;10.207698 51.16006;10.207336 51.16398;10.207174 51.164227;10.207152 51.16488;10.207959 51.165154;10.20886 51.165283;10.210337 51.16589;10.210597 51.16606;10.21117 51.166447;10.211747 51.167023;10.213431 51.16794;10.216801 51.169006;10.218925 51.16982;10.22234 51.17145;10.226148 51.17283;10.227023 51.173073;10.22834 51.173782;10.229517 51.174507;10.230835 51.17587;10.230929 51.17651;10.231275 51.177074;10.232361 51.1781;10.232807 51.178204;10.232982 51.178246;10.233305 51.178493;10.233467 51.178825;10.233722 51.179203;10.233862 51.179897;10.233868 51.17991;10.234372 51.1809;10.234441 51.181377;10.234535 51.18161;10.234811 51.182133;10.235388 51.18278;10.235841 51.183247;10.236083 51.183495;10.236071 51.183655;10.23606 51.1838;10.236223 51.184883;10.236086 51.18535;10.235833 51.18571;10.235672 51.18606;10.236024 51.186104;10.2364855 51.186172;10.236457 51.186684;10.235372 51.18671;10.235005 51.1869;10.234382 51.18715;10.234543 51.187496;10.232375 51.187744;10.231846 51.18783;10.231224 51.188034;10.2305765 51.188152;10.230094 51.188168;10.229886 51.188152;10.229378 51.187862;10.229009 51.18812;10.228455 51.187717;10.228179 51.188007;10.226032 51.1872;10.22587 51.187344;10.225547 51.187344;10.225363 51.18737;10.224856 51.1872;10.223957 51.186935;10.220954 51.185867;10.220437 51.185715;10.22024 51.185677;10.219756 51.18581;10.216461 51.186684;10.216184 51.18674;10.215629 51.186695;10.214525 51.18703;10.214132 51.187263;10.21374 51.18761;10.213533 51.18803;10.213486 51.18819;10.211875 51.18979;10.2113695 51.190353;10.211254 51.190422;10.210978 51.190437;10.210736 51.190384;10.2088785 51.189934;10.208718 51.189934;10.207492 51.190353;10.206739 51.190723;10.205651 51.191257;10.205073 51.191113;10.204105 51.191143;10.201824 51.191505;10.200301 51.19181;10.199998 51.191822;10.199791 51.191826;10.19811 51.19209;10.197465 51.19209;10.196841 51.192215;10.19592 51.1928;10.195804 51.193188;10.195575 51.193565;10.19553 51.194378;10.195715 51.194565;10.196038 51.194725;10.197262 51.1952;10.197378 51.19542;10.197376 51.195812;10.197148 51.19652;10.197053 51.196785;10.196573 51.197147;10.194729 51.198193;10.194357 51.19856;10.194233 51.19868;10.1938 51.199226;10.193593 51.199383;10.192958 51.19965;10.192814 51.199776;10.192406 51.2;10.191913 51.200268;10.191503 51.200523;10.191317 51.2008;10.191253 51.201046;10.191108 51.20122;10.19084 51.20145;10.1901245 51.201855;10.189979 51.202023;10.189708 51.202545;10.189163 51.203224;10.188634 51.203697;10.188059 51.20408;10.18786 51.204174;10.187259 51.204456;10.186831 51.20462;10.185867 51.205215;10.184116 51.206207;10.182589 51.207077;10.182119 51.207237;10.179507 51.207874;10.178996 51.208065;10.178397 51.208687;10.178273 51.208824;10.17823 51.20902;10.178065 51.209194;10.177758 51.209335;10.177348 51.20946;10.1772185506984 51.2095160162432-10.1344347497122 51.1323574964968;10.123557 51.11274;10.133982 51.086697;10.145224151523 51.0857578508596;10.14565 51.086407;10.145735 51.086536;10.145938 51.086773;10.146373 51.087273;10.146817 51.087543;10.147969 51.088093;10.148595 51.088326;10.1496315 51.088432;10.149608 51.08856;10.151806 51.08993;10.152412 51.090195;10.15424 51.091797;10.154982 51.092506;10.15524 51.092854;10.155798 51.093796;10.156761 51.09588;10.157126 51.09658;10.157333 51.096977;10.161128 51.097794;10.16283 51.098293;10.164015 51.098804;10.165234 51.09933;10.165488 51.099518;10.165396 51.099808;10.165389 51.1;10.165374 51.10033;10.164518 51.10071;10.164125 51.100925;10.163894 51.101273;10.163871 51.10175;10.163962 51.10227;10.164305 51.102543;10.164259 51.102932;10.164074 51.10315;10.163889 51.103565;10.163314 51.103737;10.162212 51.10424;10.161752 51.104546;10.161019 51.104744;10.16056 51.104614;10.159918 51.10434;10.159576 51.10431;10.159367 51.104424;10.15923 51.104683;10.159273 51.10503;10.159846 51.105637;10.160052 51.1063;10.160302 51.106762;10.160216 51.10713;10.160046 51.10786;10.160388 51.10812;10.161352 51.108295;10.161925 51.10854;10.162289 51.108585;10.163209 51.108356;10.163579 51.107967;10.163959 51.107944;10.164312 51.10792;10.165408 51.10807;10.166056 51.108204;10.167601 51.10791;10.168315 51.107227;10.171217 51.105515;10.172047 51.10524;10.172531 51.105354;10.173363 51.105686;10.175092 51.10657;10.175349 51.10689;10.175464 51.10773;10.175626 51.108295;10.175743 51.10889;10.175446 51.10975;10.174279 51.11054;10.173925 51.11078;10.173256 51.111385;10.17335 51.112083;10.174227 51.113705;10.174206 51.113995;10.173931 51.11475;10.173792 51.115242;10.173863 51.115707;10.174511 51.11681;10.173312 51.117287;10.172328 51.117542;10.172136 51.11759;10.1726675 51.118347;10.170108 51.118523;10.170086 51.118942;10.166511 51.118988;10.165527 51.11892;10.165402 51.11891;10.161479 51.119247;10.159988 51.11952;10.15875 51.118954;10.157101 51.118504;10.155818 51.1183;10.152131 51.11814;10.1514635 51.11886;10.151173 51.119152;10.151053 51.11928;10.150874 51.119465;10.150752 51.119595;10.150581 51.119785;10.150513 51.11988;10.149525 51.119907;10.149525 51.120224;10.149295 51.1206;10.148835 51.121017;10.148008 51.12194;10.146994 51.12299;10.14672 51.12276;10.146532 51.12311;10.146396 51.123363;10.146717 51.123684;10.1466 51.12424;10.146507 51.12523;10.146527 51.125904;10.144396 51.125122;10.144673 51.12489;10.14447 51.124813;10.143891 51.124584;10.143593 51.124886;10.143225 51.125206;10.14146 51.124264;10.141115 51.125114;10.139763 51.12459;10.139555 51.1254;10.139437 51.12654;10.139399 51.127525;10.139395 51.127617;10.139391 51.127728;10.139387 51.127853;10.137919 51.127865;10.137901 51.128075;10.137801 51.1284;10.137458 51.128704;10.136539 51.12921;10.135505 51.129715;10.135182 51.130047;10.134697 51.131344;10.1344347497122 51.1323574964968',
'10.057897844325 51.2771566023186;10.0536199548994 51.2669566287516;10.054148 51.26662;10.054374 51.266518;10.054661 51.266533;10.055008 51.266624;10.055904 51.267086;10.05674 51.267357;10.057493 51.26764;10.057759 51.267807;10.057922 51.267986;10.058464 51.26915;10.058585 51.26933;10.059395 51.270214;10.059456 51.270493;10.059393 51.270775;10.059348 51.271236;10.059366 51.27167;10.059446 51.27194;10.0595665 51.272205;10.059991 51.272884;10.060255 51.27313;10.060581 51.273335;10.06061 51.27344;10.060578 51.273922;10.060448 51.274612;10.060443 51.275368;10.060358 51.275787;10.060234 51.275978;10.059844 51.276207;10.059084 51.27655;10.058222 51.27687;10.058135 51.276947;10.057897844325 51.2771566023186-10.0501790778361 51.2587523832459;10.0483423380677 51.2543729579678;10.049082 51.254818;10.04959 51.25522;10.049928 51.2566;10.050063 51.257687;10.050222 51.25821;10.0502405 51.25849;10.050218 51.258694;10.0501790778361 51.2587523832459-10.050963 51.254646;10.050597 51.254467;10.050253 51.254185;10.049767 51.253586;10.049158 51.25297;10.047898 51.25188;10.0476439805588 51.2527078312145;10.030553 51.211957;10.037739 51.189741;10.123557 51.11274;10.1344347497122 51.1323574964968;10.134372 51.1326;10.133981 51.133118;10.133545 51.133404;10.132648 51.133736;10.132212 51.134037;10.13189 51.1346;10.131613 51.134815;10.130626 51.135246;10.130145 51.134842;10.129343 51.134525;10.128977 51.13444;10.12884 51.134407;10.128171 51.135143;10.127711 51.13543;10.128465 51.135967;10.128215 51.136093;10.127595 51.13585;10.126609 51.136425;10.126104 51.13657;10.125324 51.136566;10.124498 51.136654;10.123718 51.136925;10.123074 51.137184;10.122295 51.136723;10.121697 51.13711;10.120872 51.136707;10.12039 51.137283;10.119585 51.138145;10.119126 51.138073;10.118756 51.1395;10.118526 51.139717;10.11828 51.139835;10.118019 51.13996;10.118042 51.140106;10.119074 51.14008;10.119442 51.139675;10.120085 51.139732;10.120634 51.139877;10.121825 51.14037;10.123361 51.140907;10.122947 51.14131;10.122785 51.141525;10.123935 51.142082;10.124916 51.142555;10.125786 51.142933;10.127344 51.143497;10.127755 51.14374;10.126881 51.144505;10.126511 51.144997;10.125818 51.145775;10.125374 51.146233;10.126213 51.146206;10.129173 51.145763;10.130572 51.145706;10.134449 51.145336;10.137616 51.145096;10.140688 51.145016;10.1414335245127 51.1449794489928;10.1772185506984 51.2095160162432;10.176798 51.209698;10.176327 51.20984;10.174901 51.2101;10.174023 51.210335;10.170962 51.21117;10.170245 51.21145;10.169549 51.211853;10.169202 51.211952;10.168815 51.212013;10.167228 51.212017;10.16562 51.2122;10.164708 51.212547;10.164383 51.212227;10.16408 51.211803;10.163939 51.21151;10.164531 51.21145;10.164432 51.2111;10.164286 51.21077;10.164104 51.210358;10.164009 51.210144;10.163376 51.210243;10.163071 51.209988;10.162746 51.20983;10.162359 51.209576;10.161933 51.20918;10.162363 51.209026;10.161938 51.208412;10.161654 51.208206;10.161083 51.207897;10.160754 51.208244;10.159487 51.207817;10.158653 51.207638;10.158696 51.20728;10.156613 51.20707;10.156386 51.207478;10.155629 51.207424;10.154135 51.20743;10.154117 51.20706;10.153241 51.20701;10.152688 51.206905;10.152139 51.206722;10.151688 51.207054;10.149511 51.206295;10.149401 51.20708;10.149355 51.207355;10.148799 51.207363;10.148328 51.207798;10.148101 51.20822;10.14763 51.208782;10.147173 51.20933;10.146161 51.210835;10.146025 51.211;10.145976 51.211063;10.145606 51.21133;10.144535 51.212364;10.144144 51.212696;10.144103 51.212822;10.144573 51.212864;10.144242 51.213333;10.144137 51.21369;10.144113 51.214153;10.144206 51.215366;10.144103 51.215584;10.143199 51.216286;10.142993 51.216515;10.143011 51.216667;10.143195 51.216873;10.144272 51.21754;10.144558 51.217617;10.145234 51.21762;10.145519 51.217697;10.145607 51.217793;10.145742 51.21794;10.145354 51.217976;10.144801 51.21809;10.144541 51.21813;10.144104 51.21819;10.143825 51.218266;10.142631 51.218582;10.142078 51.218773;10.141545 51.21899;10.140294 51.219624;10.140048 51.21965;10.139905 51.21961;10.139392 51.21938;10.138239 51.219463;10.137698 51.2195;10.137515 51.21945;10.137107 51.219154;10.137069 51.21892;10.137252 51.218822;10.137498 51.21881;10.137581 51.21876;10.13736 51.218094;10.1372385 51.218033;10.137037 51.218044;10.136194 51.218105;10.133618 51.218407;10.133189 51.21851;10.132596 51.21848;10.131552 51.218502;10.131246 51.21855;10.131123 51.21861;10.130775 51.21877;10.130037 51.21901;10.129566 51.219055;10.129077 51.219006;10.127953 51.218746;10.127667 51.21868;10.126667 51.218628;10.125681 51.218384;10.12526 51.21828;10.124544 51.218227;10.124319 51.218174;10.122895 51.217327;10.122218 51.2169;10.122041 51.21679;10.120858 51.2164;10.119939 51.21627;10.119119 51.216232;10.118345 51.216164;10.117364 51.215996;10.117061 51.21565;10.116898 51.215508;10.116716 51.215458;10.115467 51.215492;10.115079 51.215466;10.113447 51.21519;10.113242 51.215206;10.113119 51.215282;10.112026 51.216557;10.111943 51.216915;10.112058 51.21763;10.112036 51.217922;10.111827 51.21851;10.111762 51.21921;10.111699 51.219444;10.109161 51.22014;10.107561 51.22063;10.107418 51.22072;10.107463 51.220787;10.107395 51.221043;10.106369 51.22168;10.105754 51.22171;10.105058 51.22172;10.104017 51.22164;10.101504 51.221508;10.100443 51.221367;10.099999 51.221333;10.0994625 51.221302;10.098789 51.22119;10.098401 51.22108;10.097708 51.22063;10.097222 51.22024;10.096833 51.220154;10.096624 51.2201;10.096502 51.220078;10.096771 51.220448;10.095171 51.220978;10.094393 51.221207;10.093717 51.221474;10.093102 51.22174;10.092734 51.221947;10.092425 51.22217;10.092177 51.222496;10.092095 51.222687;10.091985 51.223564;10.091647 51.224995;10.091665 51.225338;10.091766 51.22561;10.091785 51.2258;10.091617 51.226284;10.091432 51.226387;10.090962 51.226486;10.090552 51.226654;10.090286 51.226677;10.08998 51.22665;10.089734 51.226574;10.089388 51.226368;10.088669 51.226875;10.088242 51.226685;10.087672 51.226494;10.087266 51.22625;10.087143 51.226093;10.087103 51.225853;10.086861 51.225555;10.08609 51.22489;10.085661 51.224773;10.084006 51.2245;10.08368 51.224422;10.083578 51.224297;10.083353 51.224194;10.0828495 51.224163;10.082309 51.22399;10.082131 51.22393;10.081991 51.223885;10.081415 51.2237;10.08113 51.223713;10.080543 51.223957;10.080188 51.224106;10.079738 51.224186;10.079145 51.22418;10.078614 51.22413;10.077878 51.22401;10.077622 51.223927;10.077184 51.223778;10.076736 51.223522;10.073705 51.22428;10.073175 51.22433;10.073173 51.224533;10.072885 51.224804;10.071757 51.225285;10.070978 51.22555;10.070693 51.225693;10.070199 51.225998;10.068969 51.22644;10.068764 51.226555;10.068209 51.227013;10.067899 51.227306;10.06759 51.227753;10.067445 51.228138;10.067423 51.22837;10.067741 51.229572;10.06802 51.23053;10.06814 51.23084;10.068644 51.231304;10.069013 51.23176;10.069254 51.232132;10.069417 51.232464;10.069558 51.232887;10.06972 51.233154;10.070348 51.233784;10.07051 51.234013;10.070771 51.234844;10.071031 51.23537;10.07125 51.236355;10.071245 51.23699;10.071057 51.23753;10.071159 51.23767;10.071175 51.2379;10.071419 51.238438;10.071824 51.23891;10.0724325 51.23973;10.072878 51.240166;10.07363 51.240654;10.074485 51.24099;10.074811 51.241142;10.075649 51.24145;10.07726 51.241955;10.078993 51.2426;10.079338 51.242756;10.078663 51.242916;10.077771 51.24318;10.0773325 51.243313;10.076698 51.243412;10.076022 51.24355;10.075059 51.243828;10.074648 51.243877;10.07334 51.243965;10.07244 51.243977;10.071666 51.243935;10.069807 51.243725;10.069459 51.243736;10.06874 51.24408;10.068599 51.244167;10.067528 51.244854;10.066605 51.245518;10.069378 51.24652;10.068492 51.24763;10.068263 51.24804;10.068035 51.248577;10.067828 51.248833;10.06676 51.24935;10.064179 51.250546;10.0639925 51.250687;10.063701 51.251236;10.063576 51.251842;10.063472 51.25204;10.062589 51.252457;10.062322 51.252544;10.061506 51.252476;10.060893 51.25246;10.060442 51.25249;10.059623 51.252655;10.058991 51.25279;10.058477 51.253033;10.05782 51.25345;10.057656 51.25348;10.05684 51.253376;10.056002 51.25336;10.055754 51.253407;10.054972 51.25412;10.054642 51.254517;10.050963 51.254646',
'10.133982 51.086697;10.0740627577712 51.011069757029;10.074399 51.01106;10.074498 51.01133;10.07611 51.010983;10.077403 51.010372;10.077469 51.010105;10.078772 51.010036;10.079154 51.010048;10.079765 51.010063;10.080501 51.010086;10.080762 51.010357;10.08203 51.010094;10.0825615 51.00988;10.082901 51.00981;10.083052 51.00978;10.083742 51.009876;10.08393 51.009583;10.084336 51.009663;10.084972 51.00946;10.086221 51.00893;10.086711 51.008755;10.086954 51.008945;10.088463 51.008663;10.089897 51.00817;10.090716 51.007843;10.093511 51.007504;10.094184 51.007324;10.097152 51.00633;10.097442 51.00623;10.097569 51.00617;10.097789 51.006054;10.098333 51.006405;10.099999 51.00603;10.100621 51.005894;10.100343 51.005493;10.100811 51.00534;10.10116 51.00523;10.10147 51.004986;10.101546 51.004925;10.1019 51.00463;10.102249 51.004345;10.10313 51.00362;10.103511 51.003296;10.103556 51.004284;10.103655 51.004642;10.104154 51.005108;10.105528 51.00582;10.106618 51.00629;10.106881 51.006535;10.106878 51.006794;10.1066885 51.007126;10.1058 51.007954;10.105776 51.00816;10.105852 51.008453;10.106113 51.008762;10.106475 51.009033;10.107322 51.009426;10.10783 51.009506;10.108319 51.00955;10.109254 51.009567;10.109845 51.00961;10.110749 51.009785;10.11092 51.00982;10.11179 51.010174;10.113384 51.011158;10.114109 51.011574;10.114515 51.011757;10.114937 51.011898;10.11573 51.012108;10.116724 51.01223;10.118189 51.012318;10.119309 51.012287;10.121574 51.01193;10.124029 51.011173;10.12493 51.010834;10.127883 51.00948;10.128416 51.00919;10.128646 51.00882;10.128814 51.008472;10.128882 51.00818;10.128807 51.007614;10.12883 51.007446;10.129269 51.006985;10.12941 51.006836;10.129786 51.006313;10.130054 51.006107;10.130566 51.00587;10.132028 51.005253;10.13272 51.00496;10.133048 51.004757;10.133236 51.004513;10.133281 51.004208;10.133122 51.00392;10.132758 51.00373;10.132113 51.0033;10.131749 51.00321;10.13118 51.00318;10.130705 51.003185;10.129815 51.003197;10.129123 51.003128;10.12874 51.002983;10.128336 51.00275;10.127856 51.0023;10.1277895 51.00221;10.127639 51.002;10.127484 51.00141;10.127374 51.000565;10.127462 51.00018;10.127546 51.00011;10.127679 51;10.127812 50.999886;10.128265 50.999596;10.128878 50.999382;10.130491 50.999172;10.131409 50.998974;10.13181 50.99882;10.131812 50.99856;10.131744 50.99834;10.131132 50.997425;10.131087 50.997295;10.131134 50.997192;10.13132 50.99699;10.131619 50.99689;10.132838 50.99688;10.133551 50.996838;10.133692 50.996765;10.133807 50.996593;10.133954 50.99565;10.1340475 50.995564;10.134346 50.99539;10.13467 50.995304;10.135176 50.995308;10.136348 50.995193;10.137224 50.995026;10.139415 50.994423;10.140269 50.99415;10.141168 50.993935;10.142135 50.99378;10.143676 50.993607;10.144552 50.993477;10.145242 50.993423;10.14722 50.993458;10.149221 50.99373;10.149882 50.993896;10.151904 50.994423;10.152982 50.99473;10.155094 50.99552;10.155985 50.995815;10.156355 50.995914;10.1570425 50.996098;10.157263 50.996143;10.157996 50.99631;10.158351 50.99639;10.159155 50.996536;10.159982 50.996613;10.160671 50.99675;10.161408 50.996853;10.161888 50.996956;10.162646 50.997017;10.16329 50.997005;10.164163 50.997093;10.165191 50.997242;10.16529 50.997257;10.166072 50.99765;10.166741 50.99819;10.167266 50.998882;10.167446 50.99924;10.167506 50.999493;10.167414 51;10.167257 51.00085;10.167256 51.00113;10.167337 51.001324;10.167538 51.001568;10.167821 51.00178;10.168226 51.002014;10.168573 51.002155;10.168956 51.002243;10.169384 51.002296;10.169811 51.00228;10.170379 51.002182;10.171501 51.001785;10.171828 51.00162;10.1720915 51.001442;10.173112 51.0008;10.173398 51.0006;10.173521 51.00047;10.173562 51.000202;10.173542 51.0001;10.173485 51;10.173441 50.99992;10.173178 50.999664;10.172933 50.99951;10.17267 50.99941;10.171899 50.99923;10.171694 50.9992;10.170374 50.999012;10.1700945 50.99892;10.169768 50.998753;10.169606 50.99859;10.169422 50.99822;10.169363 50.997887;10.169426 50.997528;10.169529 50.997246;10.169838 50.996822;10.17006 50.996647;10.170326 50.996494;10.170774 50.996326;10.171119 50.99626;10.171588 50.996277;10.171974 50.996326;10.172281 50.996403;10.17252 50.99652;10.172664 50.996635;10.172926 50.997005;10.173471 50.99818;10.173591 50.99836;10.173712 50.998474;10.173915 50.998592;10.174566 50.998642;10.175176 50.998592;10.175622 50.998463;10.176051 50.99826;10.17648 50.99789;10.176624 50.997723;10.176625 50.99734;10.176607 50.99725;10.176465 50.996445;10.176486 50.996227;10.176589 50.996075;10.176773 50.99597;10.176977 50.995922;10.177282 50.99591;10.177726 50.995987;10.178154 50.99614;10.178683 50.996395;10.17923 50.996765;10.179615 50.9971;10.179999 50.99751;10.180188 50.997765;10.180385 50.998028;10.180504 50.998184;10.180726 50.998314;10.18093 50.99838;10.181193 50.998417;10.181479 50.998405;10.182008 50.998302;10.182997 50.998013;10.183086 50.997986;10.18339 50.99797;10.183633 50.998013;10.18398 50.99811;10.184183 50.998215;10.184933 50.998714;10.185644 50.9991;10.185988 50.99924;10.186112 50.99928;10.186556 50.999416;10.187104 50.99948;10.187348 50.99947;10.187573 50.99943;10.188101 50.999268;10.188092 50.999386;10.188085 50.99951;10.188059 50.99993;10.189259 50.99961;10.189299 50.99992;10.191395 50.999577;10.191495 50.999825;10.191558 50.999985;10.192338 51.00194;10.195773 51.00197;10.19497 51.00417;10.195738 51.00444;10.195902 51.00472;10.196352 51.004948;10.196915 51.00523;10.197242 51.00536;10.199999 51.00602;10.203557 51.00687;10.205281 51.00726;10.203842 51.00814;10.203535 51.008347;10.203413 51.00846;10.203244 51.008877;10.202578 51.010494;10.202276 51.01123;10.203147 51.01159;10.202092 51.011562;10.202007 51.012085;10.201657 51.013428;10.201533 51.0139;10.20147 51.01395;10.201206 51.014053;10.200737 51.01421;10.199999 51.014294;10.199213 51.014385;10.198461 51.01451;10.198134 51.014587;10.197646 51.014782;10.197156 51.015076;10.196747 51.015278;10.196442 51.015316;10.196057 51.01533;10.195609 51.01543;10.194917 51.015636;10.194179 51.015926;10.193979 51.016197;10.193917 51.016415;10.193895 51.01672;10.193895 51.01703;10.1940775 51.01741;10.194074 51.01773;10.194033 51.017834;10.193135 51.018345;10.192768 51.018585;10.192727 51.018703;10.194328 51.019894;10.19469 51.020226;10.194831 51.02039;10.194852 51.02048;10.194952 51.02095;10.19729 51.020695;10.199796 51.020077;10.199959 51.019985;10.200305 51.01969;10.200733 51.019386;10.201203 51.019142;10.201791 51.018936;10.203277 51.01861;10.203661 51.01936;10.204409 51.020245;10.205549 51.01994;10.206466 51.01963;10.20779 51.01915;10.208418 51.018917;10.209172 51.01938;10.2099 51.019917;10.210974 51.020786;10.210748 51.020874;10.211377 51.021564;10.21265 51.023;10.212446 51.023087;10.213822 51.02467;10.213903 51.02475;10.214329 51.024826;10.214547 51.025143;10.214609 51.02523;10.214669 51.025322;10.21025 51.027416;10.207986 51.0285;10.206461 51.02918;10.20705 51.029613;10.205948 51.030384;10.205765 51.030434;10.204117 51.030613;10.201657 51.030968;10.201815 51.03134;10.2021 51.03126;10.202221 51.03162;10.202628 51.031673;10.202974 51.031826;10.204554 51.033157;10.204674 51.03331;10.205011 51.034973;10.203142 51.034946;10.202951 51.036327;10.202872 51.03652;10.202217 51.03721;10.202033 51.037323;10.2014 51.03754;10.199998 51.038044;10.198387 51.038624;10.198872 51.039276;10.19893 51.04008;10.198888 51.040195;10.196771 51.040733;10.195857 51.040913;10.195429 51.040924;10.19518 51.042;10.194307 51.04188;10.194303 51.04243;10.1926565 51.042442;10.192678 51.04212;10.1919 51.042343;10.190888 51.042633;10.191313 51.04289;10.189786 51.04336;10.188748 51.043617;10.187813 51.04378;10.188114 51.044624;10.18616 51.045048;10.185508 51.045315;10.184986 51.045506;10.184366 51.045734;10.184547 51.046772;10.184503 51.047077;10.184258 51.047665;10.184236 51.047832;10.184479 51.04796;10.185068 51.048203;10.184696 51.049187;10.184472 51.04915;10.184068 51.048866;10.183683 51.048763;10.182258 51.04846;10.181469 51.048176;10.181327 51.048176;10.180661 51.048317;10.178885 51.0487;10.178376 51.048775;10.177075 51.04889;10.173817 51.049088;10.17191 51.049206;10.171604 51.049267;10.169026 51.049988;10.168367 51.050236;10.166677 51.050735;10.166432 51.05085;10.166086 51.051105;10.165758 51.051285;10.165372 51.051437;10.164609 51.05167;10.164255 51.051815;10.163421 51.05215;10.161998 51.052937;10.160043 51.05336;10.159023 51.053673;10.157587 51.05411;10.155444 51.054497;10.154153 51.055027;10.152112 51.055336;10.150914 51.055405;10.149995 51.05537;10.149612 51.055325;10.148936 51.05525;10.147715 51.054996;10.147437 51.054947;10.146986 51.055138;10.146804 51.055073;10.146171 51.05506;10.145913 51.056023;10.14566 51.05647;10.145433 51.056778;10.14519 51.056686;10.145126 51.05693;10.143942 51.056984;10.143695 51.057175;10.143916 51.05732;10.143685 51.05783;10.142624 51.058014;10.141171 51.058327;10.14056 51.05854;10.140434 51.058743;10.140365 51.059155;10.140729 51.059273;10.140478 51.05972;10.140511 51.06013;10.140818 51.060158;10.140917 51.06026;10.140914 51.060467;10.142787 51.060505;10.14275 51.06031;10.144375 51.060474;10.1448 51.06062;10.145042 51.060825;10.145361 51.061237;10.145585 51.06129;10.14656 51.0614;10.146598 51.061466;10.146689 51.062187;10.146729 51.062252;10.147055 51.062267;10.147112 51.062485;10.147128 51.06287;10.147072 51.06307;10.147019 51.063255;10.146631 51.06337;10.146223 51.063404;10.146239 51.063686;10.146197 51.06379;10.146032 51.06389;10.145316 51.064117;10.14445 51.064804;10.144611 51.064972;10.144015 51.06534;10.143829 51.065556;10.143865 51.065746;10.144005 51.06589;10.144288 51.065983;10.14558 51.066734;10.145859 51.066963;10.146344 51.067368;10.146848 51.067654;10.147221 51.067272;10.148412 51.067905;10.149766 51.068455;10.150797 51.06901;10.15154 51.069553;10.152683 51.069397;10.154394 51.069305;10.154865 51.070477;10.154047 51.070686;10.1528635 51.070835;10.153449 51.072453;10.150897 51.07285;10.151476 51.073635;10.152046 51.073624;10.152074 51.074383;10.150892 51.074516;10.15123 51.074966;10.149658 51.075302;10.151023 51.076504;10.151183 51.076645;10.150427 51.076897;10.149235 51.077545;10.1470585 51.07881;10.148107 51.07941;10.148498 51.0804;10.148531 51.08085;10.148506 51.08122;10.148176 51.081486;10.14664 51.082108;10.147557 51.083267;10.148037 51.083744;10.14362 51.084995;10.14388 51.085293;10.145021 51.085175;10.145137 51.085625;10.145224151523 51.0857578508596;10.133982 51.086697',
'10.037739 51.189741;9.992703 51.041448;10.0585316161439 51.012558571396;10.059661 51.01232;10.059543 51.01213;10.0597504857315 51.0120236604713;10.0613740332412 51.0113111533184;10.062474 51.01088;10.0626583549887 51.0107475181761;10.0633884376681 51.0104271153988;10.063419 51.01042;10.063624 51.01035;10.0636884544641 51.0102954505649;10.0655337055632 51.0094856469718;10.065832 51.009567;10.0661 51.009377;10.067826 51.009747;10.068776 51.01014;10.068589 51.01037;10.070086 51.010914;10.071201 51.011204;10.071388 51.011013;10.072607 51.011112;10.0740627577712 51.011069757029;10.133982 51.086697;10.123557 51.11274;10.037739 51.189741',
'10.030553 51.211957;9.886248 51.175285;9.858046 51.116934;9.964509 51.038245;9.992703 51.041448;10.037739 51.189741;10.030553 51.211957',
'9.558001 51.499886;9.448123 51.449764;9.427358 51.397326;9.508309 51.317112;9.62897808941319 51.3143792297421;9.629329 51.316708;9.629798 51.320534;9.629925 51.320843;9.630076 51.320904;9.63336 51.324654;9.633509 51.324715;9.634182 51.32429;9.634332 51.324387;9.635007 51.323883;9.635613 51.32409;9.636211 51.32357;9.636386 51.323307;9.636507 51.322857;9.636742 51.322586;9.638335 51.321667;9.6392565 51.322247;9.638117 51.323143;9.636886 51.323967;9.635789 51.324257;9.635123 51.324528;9.633709 51.32608;9.632043 51.3267;9.630714 51.32714;9.630256 51.327244;9.629801 51.32723;9.62837 51.327003;9.627687 51.327;9.6269865 51.326885;9.626044 51.32694;9.623076 51.327667;9.62069 51.32817;9.619444 51.32826;9.618474 51.32824;9.617679 51.328175;9.614999 51.327724;9.610542 51.326702;9.610088 51.32625;9.609812 51.325745;9.608307 51.325794;9.607941 51.324932;9.607718 51.32472;9.607135 51.32445;9.606602 51.324482;9.605193 51.32466;9.60439 51.32487;9.604779 51.326385;9.606148 51.3263;9.605894 51.327717;9.602712 51.327667;9.602672 51.32869;9.601352 51.328705;9.601349 51.328846;9.599904 51.328896;9.59652 51.331356;9.595136 51.333675;9.595244 51.333866;9.59529 51.334476;9.595134 51.334724;9.593649 51.33532;9.592496 51.335976;9.591998 51.336193;9.590864 51.336273;9.589584 51.33662;9.588955 51.33671;9.588112 51.336906;9.587589 51.33734;9.586036 51.338078;9.586038 51.338448;9.584936 51.338463;9.58463 51.338543;9.584245 51.33879;9.583914 51.339146;9.583667 51.34012;9.583274 51.340736;9.581525 51.34128;9.581381 51.34184;9.581075 51.341946;9.58079 51.34194;9.58045 51.34182;9.580233 51.34226;9.579556 51.34222;9.579279 51.341953;9.578641 51.3415;9.578073 51.341396;9.577306 51.34082;9.576966 51.340733;9.576083 51.340717;9.574223 51.340523;9.573114 51.34036;9.571539 51.340263;9.570261 51.340103;9.568191 51.340046;9.568022 51.339973;9.567989 51.340046;9.567875 51.340237;9.567753 51.34044;9.566271 51.34124;9.566107 51.342487;9.563451 51.34448;9.562549 51.345154;9.562212 51.34539;9.559354 51.347546;9.558978 51.34813;9.558506 51.34909;9.557858 51.35071;9.557622 51.351227;9.557245 51.351887;9.556658 51.352066;9.556556 51.35338;9.5560465 51.354195;9.55598 51.35461;9.555577 51.35531;9.554471 51.35603;9.552568 51.35739;9.551943 51.357754;9.55092 51.358276;9.550172 51.35856;9.549582 51.35875;9.54849 51.359055;9.546969 51.359375;9.546557 51.359642;9.547472 51.3628;9.548037 51.362656;9.550652 51.36204;9.553702 51.361298;9.554753 51.361115;9.555742 51.361027;9.556637 51.360973;9.55871 51.360977;9.56004 51.36099;9.561227 51.36107;9.562442 51.361164;9.5628605 51.361217;9.56379 51.36134;9.565265 51.361603;9.566457 51.36203;9.568011 51.362698;9.569895 51.363567;9.570213 51.36383;9.570436 51.36435;9.571129 51.36597;9.5725155 51.367023;9.57396 51.368065;9.575224 51.369022;9.576251 51.37;9.576621 51.370514;9.576821 51.370975;9.576772 51.371487;9.5766535 51.37171;9.576345 51.371864;9.575647 51.37211;9.574154 51.372562;9.573375 51.372604;9.572751 51.372787;9.570992 51.373226;9.569186 51.37375;9.567987 51.37382;9.565859 51.374138;9.564908 51.37419;9.564296 51.374245;9.563144 51.37425;9.562459 51.374302;9.561772 51.37444;9.560737 51.374886;9.560366 51.37533;9.559732 51.37609;9.558937 51.376835;9.558522 51.377605;9.558366 51.378307;9.558171 51.379425;9.558135 51.380272;9.558204 51.38113;9.558387 51.381405;9.558755 51.38205;9.559718 51.38331;9.560228 51.38405;9.561285 51.385307;9.56203 51.38609;9.562098 51.38616;9.563404 51.38737;9.564962 51.388504;9.566544 51.389313;9.568813 51.38994;9.570081 51.390293;9.570582 51.39055;9.571118 51.390778;9.572376 51.391563;9.573803 51.39254;9.5751095 51.39375;9.575509 51.39474;9.575885 51.39589;9.57645 51.398083;9.576786 51.39933;9.577115 51.400967;9.577447 51.40155;9.577628 51.401684;9.578265 51.4022;9.578757 51.402367;9.580258 51.40249;9.582768 51.402626;9.58387 51.402657;9.585464 51.40287;9.587267 51.403088;9.587952 51.403057;9.588581 51.403072;9.589499 51.402782;9.589943 51.40255;9.5901 51.402252;9.589851 51.401432;9.589681 51.40048;9.590014 51.39996;9.590608 51.398746;9.591054 51.398357;9.591823 51.397984;9.5920725 51.397915;9.592738 51.39786;9.593537 51.397903;9.5947485 51.398136;9.597002 51.398808;9.598568 51.39944;9.598813 51.399593;9.599416 51.399837;9.599964 51.400066;9.601804 51.401424;9.603265 51.40259;9.604546 51.403374;9.605164 51.403725;9.605337 51.403824;9.605666 51.40401;9.607253 51.404633;9.60771 51.404755;9.608033 51.40477;9.608527 51.40482;9.609252 51.404716;9.6094 51.405006;9.6109085 51.405624;9.611185 51.406166;9.612786 51.406048;9.613969 51.406002;9.614638 51.405838;9.616567 51.405426;9.6178055 51.405376;9.618698 51.405384;9.619723 51.40539;9.620261 51.4053;9.621313 51.40513;9.622903 51.404552;9.623627 51.404488;9.624408 51.40451;9.625529 51.40452;9.626993 51.404613;9.629565 51.40442;9.6304245 51.40432;9.6309805 51.404217;9.6317625 51.404118;9.632063 51.404076;9.63196 51.404636;9.631432 51.405457;9.631037 51.405903;9.630828 51.40614;9.629995 51.40682;9.629317 51.407444;9.629201 51.40761;9.628903 51.408264;9.628879 51.40855;9.628932 51.408775;9.629022 51.40904;9.629748 51.40987;9.630399 51.41071;9.6311655 51.4115;9.63177 51.41164;9.632362 51.411514;9.63311 51.41131;9.633242 51.411343;9.633825 51.41174;9.6350355 51.412106;9.635716 51.412315;9.636093 51.412567;9.636429 51.41281;9.636544 51.4129;9.6370325 51.413258;9.637482 51.413677;9.63808 51.41422;9.638513 51.41447;9.638932 51.41459;9.640502 51.415077;9.641653 51.415634;9.642368 51.416035;9.643045 51.41657;9.6433525 51.417404;9.644998 51.418327;9.644245 51.418564;9.64426 51.418766;9.64255 51.419582;9.6414585 51.421;9.641377 51.421215;9.640764 51.42151;9.64055 51.4217;9.639719 51.42235;9.638729 51.42336;9.636827 51.425255;9.636146 51.426044;9.63585 51.42658;9.635061 51.428;9.634903 51.428375;9.634778 51.428925;9.634042 51.429585;9.634037 51.429832;9.635101 51.429924;9.633484 51.431896;9.63323 51.43325;9.6332655 51.43338;9.633377 51.433548;9.633598 51.43385;9.633678 51.43396;9.633802 51.434147;9.633967 51.434517;9.6340885 51.43518;9.633974 51.435226;9.633129 51.43564;9.632493 51.436;9.631953 51.43639;9.631008 51.436996;9.630632 51.43861;9.6302395 51.440308;9.630199 51.440437;9.629785 51.44112;9.629178 51.441936;9.629041 51.442234;9.6284485 51.443325;9.6279745 51.444244;9.627546 51.444645;9.627578 51.445015;9.627922 51.44597;9.628125 51.447273;9.6285925 51.45086;9.628812 51.452217;9.629688 51.4524;9.630539 51.45273;9.63086 51.452972;9.630071 51.453213;9.629686 51.453503;9.62943 51.453823;9.629128 51.454712;9.628947 51.45626;9.62922 51.45692;9.629326 51.457386;9.630031 51.458332;9.630164 51.458466;9.630855 51.45916;9.631512 51.45968;9.632659 51.460464;9.633843 51.461273;9.634576 51.46179;9.635882 51.462406;9.636448 51.462673;9.636882 51.46289;9.637771 51.463264;9.638055 51.4634;9.63816 51.463413;9.639426 51.463932;9.6411295 51.46465;9.641753 51.46495;9.643263 51.465687;9.643761 51.466114;9.6443205 51.466606;9.644599 51.467144;9.644737 51.467834;9.644677 51.468025;9.644613 51.468163;9.643933 51.469627;9.643655 51.470238;9.643518 51.470356;9.642663 51.47129;9.641962 51.47202;9.640695 51.473015;9.6397705 51.47359;9.63875 51.474125;9.637676 51.4744;9.6366625 51.47457;9.635299 51.474636;9.634022 51.474663;9.63133 51.47488;9.629676 51.475113;9.6284895 51.475296;9.627264 51.475677;9.626802 51.475925;9.626203 51.47636;9.625369 51.47702;9.62422 51.477818;9.623371 51.478416;9.622366 51.47911;9.61998 51.480682;9.61857 51.481674;9.616923 51.483116;9.616329 51.483738;9.615688 51.484398;9.614867 51.485477;9.613945 51.486694;9.61343 51.48727;9.612282 51.48845;9.610829 51.489918;9.608786 51.491997;9.608124 51.492657;9.607108 51.493958;9.60615 51.495144;9.605934 51.4955;9.60585311712036 51.4959392315318;9.558001 51.499886-9.641132 51.320705;9.641005 51.3206;9.640391 51.320084;9.640866 51.319637;9.640953 51.319447;9.64088 51.319378;9.640598 51.31903;9.640754 51.318874;9.640982 51.318493;9.641144 51.317238;9.6411043128691 51.3168079022559;9.64357636331514 51.3193437976779;9.643055 51.319443;9.64295 51.319466;9.642355 51.31951;9.642106 51.319626;9.641858 51.31993;9.641238 51.320595;9.641132 51.320705-9.635686 51.317078;9.6351999638315 51.3142383241179;9.638526 51.314163;9.64078425867288 51.3164795821068;9.640043 51.316616;9.639897 51.31628;9.6397295 51.3159;9.639363 51.31566;9.638993 51.31546;9.638897 51.315456;9.638716 51.31555;9.638002 51.316116;9.636986 51.316647;9.635686 51.317078',
'9.905189 51.421032;9.904455 51.420696;9.903368 51.420166;9.903296 51.419846;9.902614 51.419605;9.902372 51.41913;9.901828 51.418552;9.901193 51.417587;9.900476 51.417046;9.899288 51.41628;9.898921 51.416573;9.898531 51.417393;9.89522 51.416817;9.89326 51.416443;9.8903265 51.41531;9.884429 51.415005;9.882906 51.414913;9.883953 51.413563;9.882474 51.41319;9.883983 51.41139;9.884254 51.410973;9.884273 51.410786;9.884168 51.410683;9.884587 51.410076;9.883479 51.409763;9.8832855 51.409584;9.882677 51.408276;9.882056 51.40796;9.88177 51.407745;9.881257 51.407402;9.881156 51.40703;9.881484 51.406384;9.881934 51.40574;9.881788 51.405243;9.881292 51.40481;9.880747 51.404503;9.879523 51.403877;9.8784 51.40371;9.878101 51.404415;9.87795 51.404926;9.877657 51.405373;9.877128 51.406937;9.876207 51.40768;9.875893 51.40785;9.875435 51.408195;9.875073 51.408592;9.874436 51.409348;9.873594 51.409756;9.872949 51.410366;9.872606 51.410896;9.871926 51.4116;9.870456 51.41226;9.869858 51.412548;9.869628 51.412632;9.869089 51.41308;9.868486 51.413807;9.865836 51.41267;9.865668 51.41271;9.865527 51.414055;9.86549 51.41448;9.865319 51.414684;9.865109 51.41473;9.864696 51.41468;9.863983 51.414467;9.862098 51.41411;9.859726 51.41391;9.859249 51.414204;9.858942 51.414345;9.858776 51.414295;9.858382 51.414112;9.858081 51.41394;9.857674 51.41368;9.857069 51.413433;9.856188 51.413208;9.8560505 51.413265;9.856001 51.41346;9.855864 51.414394;9.85538 51.41442;9.854965 51.41444;9.854023 51.414673;9.850885 51.414528;9.850717 51.4143;9.851417 51.411922;9.851515 51.411785;9.852123 51.4118;9.852534 51.411026;9.853028 51.41109;9.853126 51.410923;9.853303 51.410473;9.853719 51.409283;9.853654 51.408558;9.853112 51.406506;9.852771 51.40642;9.852673 51.405254;9.852467 51.40499;9.852186 51.40475;9.851353 51.404427;9.851568 51.40388;9.8504095 51.403767;9.850944 51.402378;9.85118 51.40183;9.850137 51.40155;9.850084 51.40122;9.851183 51.40021;9.851758 51.39993;9.852224 51.399277;9.8528 51.399067;9.853816 51.398308;9.854319 51.39792;9.854621 51.397945;9.855988 51.396713;9.855977 51.396275;9.857714 51.3944;9.859087 51.394325;9.859066 51.394432;9.859427 51.39448;9.861312 51.394447;9.861124 51.394253;9.860593 51.394146;9.8598585 51.39371;9.859462 51.393364;9.859201 51.39297;9.8590975 51.392403;9.859041 51.3921;9.858915 51.391586;9.858229 51.39037;9.856334 51.38695;9.856002 51.386272;9.855725 51.385723;9.85577 51.38508;9.856505 51.384335;9.858853 51.38225;9.859934 51.381233;9.859868 51.380543;9.86025 51.38039;9.859599 51.37935;9.859202 51.379063;9.860718 51.378216;9.8626375 51.376987;9.862907 51.376766;9.863342 51.376957;9.864973 51.37597;9.865385 51.375717;9.866565 51.375;9.867003 51.37506;9.867382 51.375076;9.867534 51.374992;9.868089 51.37483;9.868477 51.37425;9.868427 51.37363;9.868398 51.37307;9.868139 51.372543;9.8674 51.372303;9.865391 51.371754;9.86465 51.37174;9.861837 51.37171;9.860772 51.3716;9.859822 51.371666;9.858979 51.371983;9.858464 51.372135;9.857261 51.372353;9.856406 51.37241;9.855208 51.372414;9.854053 51.372147;9.853366 51.372177;9.852907 51.372353;9.852461 51.37291;9.851732 51.37342;9.850796 51.373615;9.850547 51.37384;9.850311 51.374374;9.849892 51.374386;9.849693 51.37456;9.848582 51.375534;9.848462 51.37596;9.847713 51.37654;9.846499 51.37763;9.846369 51.377743;9.842392 51.38135;9.839944 51.383694;9.839942 51.3838;9.840642 51.38541;9.841288 51.386845;9.841587 51.38713;9.841317 51.387333;9.841654 51.387775;9.841612 51.388084;9.841264 51.388546;9.84049 51.389416;9.839582 51.390457;9.839362 51.391075;9.839236 51.391884;9.839673 51.391994;9.839473 51.392708;9.839505 51.393147;9.839934 51.393814;9.840589 51.394497;9.840338 51.394794;9.840752 51.39508;9.841358 51.395264;9.84145 51.395443;9.841109 51.3967;9.840916 51.396915;9.840589 51.397247;9.840412 51.39746;9.840236 51.397877;9.840206 51.39864;9.839878 51.400208;9.839788 51.401268;9.840225 51.401268;9.840549 51.40263;9.839393 51.402264;9.8390465 51.402596;9.838867 51.403072;9.837655 51.402706;9.837059 51.403122;9.837908 51.40365;9.837292 51.404026;9.836824 51.403454;9.836468 51.403095;9.836129 51.402878;9.83501 51.402573;9.834481 51.402367;9.833743 51.401997;9.833267 51.402172;9.833071 51.402493;9.832667 51.40286;9.834026 51.403545;9.833447 51.404255;9.832525 51.404644;9.832204 51.404533;9.831501 51.40448;9.831718 51.40523;9.831951 51.406174;9.831852 51.406506;9.83168 51.406544;9.831491 51.406483;9.831416 51.406315;9.8310795 51.405968;9.83065 51.4053;9.830603 51.404728;9.830299 51.40456;9.830325 51.4042;9.829506 51.404243;9.829436 51.40509;9.829377 51.40521;9.829165 51.405327;9.828367 51.405308;9.828118 51.40538;9.827922 51.405796;9.828012 51.406178;9.827971 51.406353;9.826944 51.407585;9.826696 51.407715;9.8264475 51.40776;9.825018 51.40787;9.824864 51.408005;9.82462 51.40893;9.82511 51.409405;9.825144 51.409573;9.8247795 51.409714;9.824078 51.409565;9.823128 51.40955;9.822003 51.409653;9.818514 51.41008;9.815444 51.410423;9.81299 51.41034;9.8122225 51.410534;9.811822 51.41069;9.810944 51.41066;9.809454 51.410473;9.80818 51.410324;9.8054285 51.409893;9.804887 51.410267;9.804166 51.410213;9.803475 51.41021;9.803348 51.41018;9.803215 51.410202;9.802585 51.4102;9.801715 51.409946;9.800958 51.409626;9.800108 51.409233;9.799408 51.408882;9.799313 51.408882;9.798554 51.4087;9.797721 51.408478;9.795845 51.407932;9.794351 51.407246;9.794034 51.406826;9.793428 51.40548;9.793243 51.405155;9.79387 51.405148;9.79332 51.403812;9.792746 51.40264;9.792606 51.402008;9.792782 51.401596;9.7927885 51.40125;9.793836 51.399982;9.7941065 51.39982;9.7942095 51.399784;9.794668 51.39961;9.79558 51.399685;9.79634 51.399784;9.797115 51.400085;9.797893 51.400375;9.79863 51.40057;9.799183 51.400562;9.799762 51.400078;9.800943 51.398727;9.801104 51.398075;9.80147 51.39652;9.801461 51.395897;9.801054 51.395145;9.800003 51.39407;9.799801 51.39365;9.8005905 51.39189;9.80114 51.390682;9.801511 51.390102;9.802149 51.389416;9.801968 51.3889;9.801626 51.3889;9.801334 51.388016;9.801435 51.387638;9.801364 51.38722;9.800782 51.386723;9.800088 51.386135;9.799021 51.386044;9.798606 51.38601;9.797508 51.386887;9.797397 51.38698;9.796718 51.387535;9.795678 51.38834;9.793973 51.38903;9.792289 51.389786;9.790053 51.390427;9.789903 51.39022;9.789636 51.39028;9.788988 51.390335;9.788306 51.3902;9.787547 51.389957;9.7871685 51.38992;9.784353 51.389915;9.782508 51.38976;9.780382 51.38951;9.780232 51.389366;9.78018 51.388973;9.779764 51.38883;9.779099 51.38874;9.778663 51.38875;9.778128 51.388924;9.777689 51.38897;9.777423 51.38892;9.777159 51.38881;9.776803 51.388416;9.776453 51.387722;9.776151 51.38751;9.775848 51.387432;9.774151 51.38737;9.773984 51.387386;9.772523 51.3872;9.772199 51.387245;9.771812 51.38763;9.771619 51.387825;9.771145 51.387737;9.770691 51.38752;9.77091 51.38694;9.769543 51.386715;9.766127 51.386185;9.7659 51.386158;9.765748 51.38619;9.7655 51.38618;9.765004 51.386234;9.764587 51.386208;9.764172 51.385967;9.764222 51.38581;9.764235 51.385612;9.764272 51.385067;9.764143 51.384735;9.763804 51.38447;9.763179 51.38424;9.761668 51.3836;9.761004 51.383488;9.759045 51.3835;9.758381 51.38341;9.756723 51.38233;9.756503 51.381866;9.755725 51.380455;9.754689 51.378746;9.753111 51.37638;9.752854 51.375793;9.75232 51.374695;9.751035 51.374214;9.749601 51.373524;9.7485 51.37339;9.746257 51.373352;9.745574 51.373253;9.7452345 51.373024;9.744637 51.372402;9.74387 51.371624;9.743347 51.371037;9.742627 51.370827;9.741587 51.370537;9.7403555 51.37022;9.739371 51.369843;9.738279 51.3693;9.737123 51.368984;9.736366 51.368774;9.734584 51.368454;9.733653 51.368378;9.732303 51.368416;9.731713 51.368507;9.730429 51.36895;9.72903 51.369644;9.7273445 51.370335;9.726101 51.370815;9.725509 51.37093;9.725224 51.37092;9.724945 51.37091;9.723845 51.3707;9.723352 51.370613;9.720593 51.369633;9.717192 51.36818;9.715036 51.367607;9.714768 51.3677;9.709952 51.366894;9.708888 51.36673;9.708073 51.366676;9.707925 51.3664;9.707035 51.36623;9.70629911511998 51.3660757166389;9.727507 51.347363;9.893197 51.325125;9.92435477325699 51.3635265954085;9.923916 51.364506;9.923777 51.364876;9.923683 51.365185;9.923407 51.36618;9.923274 51.36665;9.923248 51.366974;9.923281 51.367622;9.923364 51.367977;9.925332 51.37172;9.92553 51.372;9.925687 51.37209;9.92794 51.37219;9.927957 51.37247;9.928612 51.37246;9.928568 51.37373;9.928609 51.373985;9.928785 51.374252;9.928805 51.374367;9.928593 51.37486;9.928471 51.375416;9.928062 51.375458;9.926416 51.37639;9.92628 51.376545;9.926372 51.37677;9.926615 51.37713;9.927158 51.377716;9.927669 51.378014;9.928484 51.37828;9.929516 51.37846;9.930531 51.378563;9.931138 51.378567;9.931119 51.378994;9.930654 51.379673;9.930535 51.38004;9.930494 51.380314;9.93072 51.38054;9.9310055 51.380577;9.931309 51.38051;9.93267 51.379597;9.932707 51.37976;9.932724 51.37992;9.932492 51.380215;9.931592 51.38076;9.931212 51.380745;9.931039 51.380745;9.930944 51.38085;9.930883 51.38109;9.930957 51.381252;9.931716 51.381447;9.932115 51.38153;9.932132 51.381714;9.932013 51.381912;9.931511 51.3826;9.931549 51.382683;9.931872 51.382782;9.93144 51.38372;9.930323 51.386322;9.930607 51.38643;9.930591 51.387787;9.930601 51.3885;9.930919 51.390453;9.931134 51.391537;9.931257 51.391808;9.9313755 51.392063;9.931433 51.392193;9.930801 51.392647;9.9300785 51.392582;9.929319 51.39247;9.928747 51.392517;9.927892 51.39237;9.927195 51.3949;9.927536 51.394962;9.927593 51.395023;9.92682 51.396008;9.926016 51.396313;9.925609 51.397026;9.925606 51.397274;9.923973 51.398506;9.922644 51.399628;9.922566 51.399925;9.922198 51.400364;9.921929 51.40064;9.921603 51.40079;9.91965 51.40165;9.91918 51.401268;9.918571 51.40135;9.917882 51.401608;9.91733 51.40166;9.916929 51.401695;9.916038 51.40143;9.915999 51.401585;9.916584 51.40191;9.916619 51.40211;9.91639 51.40229;9.916236 51.402336;9.9156685 51.40218;9.915515 51.402187;9.915418 51.40231;9.915368 51.403214;9.915216 51.403294;9.913731 51.403263;9.913455 51.403988;9.913734 51.404537;9.913122 51.404736;9.911795 51.405838;9.9106655 51.40645;9.909036 51.40711;9.908635 51.407417;9.908493 51.408035;9.9082575 51.4087;9.908942 51.408703;9.908761 51.40937;9.90876 51.409477;9.908854 51.409584;9.909575 51.40974;9.910374 51.40983;9.911154 51.409832;9.911707 51.409763;9.91187 51.410374;9.913773 51.410324;9.913729 51.411175;9.913134 51.411602;9.912427 51.411846;9.909468 51.412487;9.9093485 51.412937;9.9091015 51.41302;9.908628 51.4128;9.907025 51.41444;9.905828 51.415726;9.90537 51.417282;9.9060135 51.41751;9.906734 51.41765;9.907343 51.417698;9.907321 51.417923;9.906667 51.41847;9.905494 51.420902;9.905189 51.421032',
'9.46343285727729 51.6534859873385;9.462795 51.65322;9.461614 51.652657;9.461524 51.652767;9.460573 51.65226;9.460619 51.652145;9.459534 51.651695;9.458605 51.65124;9.458175 51.65106;9.456727 51.650284;9.456384 51.65006;9.455784 51.64947;9.455143 51.648846;9.453945 51.647858;9.453517 51.647606;9.452656 51.64724;9.451207 51.646687;9.451477 51.646927;9.451726 51.64708;9.451338 51.647488;9.451167 51.647533;9.451064 51.64756;9.450816 51.64762;9.4505205 51.647697;9.45045 51.648315;9.450537 51.648907;9.45022 51.64898;9.450061 51.648514;9.449857 51.648315;9.448656 51.648243;9.447249 51.64855;9.445863 51.648888;9.444567 51.649303;9.443749 51.649612;9.441543 51.65013;9.440718 51.65034;9.44043 51.649937;9.440396 51.64983;9.440251 51.649387;9.440092 51.64933;9.438641 51.649693;9.43854 51.649334;9.438303 51.649216;9.437939 51.64931;9.437899 51.64925;9.437715 51.64898;9.43763 51.648857;9.437442 51.64858;9.437172 51.64827;9.438262 51.64768;9.438475 51.647545;9.439215 51.64708;9.439398 51.646965;9.442826 51.64528;9.445185 51.644104;9.444847 51.643764;9.444697 51.643658;9.444567 51.643562;9.444514 51.643513;9.443197 51.642357;9.442197 51.642776;9.441859 51.64241;9.441384 51.64214;9.441021 51.64186;9.438853 51.63972;9.438176 51.639053;9.436779 51.637753;9.43476 51.635868;9.434548 51.63567;9.434452 51.635582;9.434043 51.635197;9.432721 51.63406;9.430488 51.632965;9.430333 51.63289;9.427898 51.6317;9.426951 51.631233;9.426514 51.631042;9.426232 51.630917;9.426155 51.630898;9.424197 51.63041;9.424122 51.630383;9.423053 51.630013;9.422869 51.629948;9.420493 51.629345;9.42038 51.629337;9.420227 51.62933;9.420065 51.629303;9.419844 51.629265;9.419253 51.629166;9.418746 51.62911;9.416098 51.62882;9.41521 51.62872;9.414959 51.62869;9.413233 51.628452;9.41315 51.628445;9.412844 51.628464;9.412513 51.628407;9.41113 51.628162;9.407883 51.628;9.407847 51.627857;9.404988 51.627422;9.402522 51.62702;9.400603 51.626736;9.400225 51.626644;9.400037 51.626537;9.399562 51.6264;9.399159 51.626396;9.398951 51.626324;9.398844 51.625263;9.398684 51.62482;9.398203 51.62489;9.396948 51.625328;9.395017 51.626156;9.394363 51.62634;9.393824 51.626453;9.392578 51.62655;9.390507 51.626743;9.389838 51.626774;9.388749 51.626656;9.38829 51.626663;9.3864975 51.626423;9.381578 51.626453;9.381288 51.626488;9.380504 51.626575;9.380084 51.626534;9.379643 51.626553;9.378914 51.62669;9.378024 51.626656;9.377366 51.62663;9.376867 51.62658;9.375724 51.626476;9.374126 51.62613;9.37309 51.625824;9.372293 51.625587;9.37202 51.625507;9.371948 51.62534;9.371946 51.623825;9.371912 51.6229;9.37177 51.622505;9.37141 51.621513;9.37122 51.620667;9.371117 51.61944;9.370121 51.619465;9.364625 51.61978;9.363125 51.619904;9.358418 51.620293;9.357748 51.620274;9.357406 51.620174;9.356897 51.619946;9.355818 51.61948;9.355059 51.619236;9.35367 51.61895;9.353169 51.618862;9.352204 51.6187;9.349145 51.61787;9.348682 51.617744;9.343874 51.6165;9.340914 51.615707;9.341137 51.615185;9.337463 51.614666;9.336983 51.614597;9.337018 51.613724;9.337033 51.613373;9.3370075 51.612907;9.3368635 51.612537;9.336869 51.612247;9.337033 51.61196;9.337299 51.611656;9.338322 51.610886;9.339824 51.609623;9.340258 51.609303;9.340667 51.609062;9.342959 51.608093;9.344071 51.60762;9.3442955 51.607494;9.344503 51.60727;9.345436 51.606472;9.345618 51.60622;9.347027 51.605434;9.347844 51.60503;9.3490925 51.60447;9.349418 51.603985;9.349686 51.60359;9.349941 51.602566;9.350213 51.6022;9.350849 51.601696;9.352201 51.601036;9.353031 51.60063;9.354323 51.60013;9.354597 51.599995;9.355346 51.59963;9.355686 51.59933;9.355868 51.599037;9.355943 51.598602;9.355954 51.597984;9.356128 51.59755;9.3578205 51.597115;9.358605 51.596863;9.359681 51.596474;9.35954 51.596317;9.360861 51.595943;9.3633585 51.595306;9.36318 51.594944;9.363718 51.5948;9.364591 51.594627;9.365449 51.59446;9.365514 51.594254;9.367018 51.594036;9.367077 51.594208;9.367365 51.594208;9.36786 51.59412;9.369115 51.593987;9.369855 51.593956;9.37121 51.59399;9.371376 51.593914;9.3709135 51.5934;9.370832 51.593227;9.370836 51.593063;9.371007 51.59277;9.371553 51.592186;9.372343 51.591602;9.372798 51.5914;9.373336 51.591236;9.373399 51.591095;9.373257 51.590992;9.372497 51.590984;9.370446 51.59081;9.370156 51.590984;9.369826 51.591007;9.369069 51.59095;9.368804 51.590847;9.367832 51.590134;9.367365 51.58976;9.368109 51.589397;9.368381 51.589268;9.367692 51.588776;9.366763 51.587963;9.366398 51.5876;9.366221 51.58729;9.366103 51.58701;9.3659115 51.586212;9.365834 51.585995;9.365797 51.585712;9.365637 51.585415;9.365397 51.585144;9.365011 51.5849;9.36446 51.584652;9.364032 51.584522;9.363493 51.584404;9.36088 51.58396;9.359524 51.583584;9.358284 51.58324;9.356326 51.58261;9.355653 51.582363;9.354595 51.581882;9.353779 51.581467;9.353295 51.581104;9.35289 51.58074;9.352246 51.58002;9.352145 51.57988;9.351485 51.578938;9.35073 51.577625;9.350406 51.57738;9.348593 51.576767;9.348243 51.57665;9.347877 51.576508;9.347677 51.57626;9.347398 51.575706;9.347305 51.57531;9.34731 51.575016;9.347458 51.574696;9.347778 51.574234;9.347864 51.57398;9.347786 51.57367;9.347285 51.573013;9.346705 51.57215;9.346381 51.57189;9.346082 51.57147;9.345986 51.57124;9.345737 51.570236;9.345473 51.56998;9.345048 51.569706;9.3446979329571 51.5694388435725;9.438607 51.473083;9.46343285727729 51.6534859873385',
'9.544296 51.640385;9.543275 51.640327;9.542573 51.640213;9.542003 51.640068;9.541266 51.63973;9.540677 51.63936;9.5402975 51.638992;9.5401757820731 51.6388450955936;9.558001 51.499886;9.60585311712036 51.4959392315318;9.605783 51.49632;9.605651 51.497234;9.605574 51.498222;9.605545 51.498745;9.6052065 51.499565;9.604821 51.500183;9.604253 51.50096;9.603413 51.50203;9.603022 51.502502;9.601652 51.503834;9.600435 51.505077;9.599439 51.506115;9.598506 51.50705;9.597475 51.508102;9.596753 51.50887;9.596395 51.509193;9.595619 51.509785;9.594405 51.510536;9.593151 51.511215;9.591839 51.51187;9.591502 51.512066;9.591254 51.512054;9.590384 51.51264;9.590016 51.5129;9.589031 51.51351;9.587195 51.5148;9.587021 51.514893;9.586125 51.515755;9.585255 51.51671;9.584964 51.517048;9.58472 51.517834;9.584713 51.518166;9.585099 51.51892;9.585905 51.520123;9.587188 51.521847;9.5875225 51.522255;9.58834 51.522934;9.589058 51.52327;9.589985 51.523613;9.591051 51.5238;9.592367 51.523808;9.592996 51.523777;9.594996 51.52367;9.596448 51.52343;9.597426 51.52315;9.598219 51.522728;9.599138 51.522076;9.600027 51.52151;9.600625 51.521145;9.601353 51.521008;9.601964 51.520977;9.602881 51.520985;9.603717 51.52106;9.6050625 51.521126;9.606717 51.521423;9.60759 51.521656;9.609141 51.522358;9.610625 51.523045;9.612099 51.52378;9.612985 51.524323;9.614924 51.525764;9.615498 51.52618;9.616202 51.526814;9.616847 51.527393;9.617651 51.528233;9.618527 51.529465;9.62035 51.53239;9.62085 51.53318;9.621691 51.53462;9.621832 51.535236;9.621821 51.535786;9.621649 51.536774;9.621527 51.537598;9.621516 51.538193;9.621601 51.538727;9.621799 51.53937;9.621796 51.539627;9.6216 51.539726;9.621785 51.540627;9.621853 51.541115;9.621864 51.5415;9.622013 51.541645;9.621962 51.542343;9.621861 51.542633;9.62138 51.54332;9.621087 51.543663;9.620464 51.54421;9.619172 51.544983;9.619075 51.54504;9.617516 51.54578;9.616418 51.546284;9.615518 51.546818;9.614686 51.54736;9.614339 51.547596;9.614163 51.5478;9.613988 51.547985;9.613893 51.54805;9.61362 51.548367;9.613169 51.54897;9.612324 51.55024;9.611924 51.551132;9.611666 51.551647;9.611302 51.55275;9.611226 51.55314;9.610856 51.554527;9.610677 51.554905;9.610217 51.55594;9.609477 51.557213;9.609531 51.55738;9.610709 51.55764;9.610863 51.557606;9.611235 51.557144;9.611787 51.556267;9.612161 51.555687;9.612259 51.55553;9.612393 51.555424;9.612733 51.555454;9.612986 51.555477;9.613403 51.555588;9.613632 51.555576;9.614076 51.55539;9.614944 51.55492;9.615714 51.554558;9.615801 51.554516;9.61651 51.55444;9.61727 51.55467;9.617421 51.55478;9.617876 51.55489;9.618017 51.55452;9.618464 51.55419;9.618967 51.55378;9.619412 51.553436;9.619782 51.55308;9.620364 51.55253;9.620578 51.552338;9.620774 51.5521;9.620836 51.551804;9.621312 51.551342;9.621809 51.549953;9.62192 51.549614;9.622355 51.548866;9.622586 51.54862;9.6227997344963 51.5487475304019;9.62831523598151 51.6274545093457;9.628307 51.62746;9.626911 51.62834;9.627018 51.628723;9.627028 51.62882;9.627071 51.628925;9.626968 51.62927;9.626427 51.62968;9.626716 51.62991;9.626823 51.629993;9.627352 51.63032;9.627114 51.630653;9.62860864472306 51.6316414931956;9.62885306094263 51.6351293468928;9.628811 51.635166;9.628588 51.63527;9.628361 51.63543;9.628226 51.63554;9.625918 51.636955;9.625787 51.636974;9.624087 51.63646;9.62309 51.636055;9.622701 51.63586;9.622209 51.635727;9.620764 51.635284;9.620629 51.635128;9.620245 51.63503;9.620314 51.63482;9.618778 51.634377;9.617897 51.63402;9.616362 51.633224;9.616113 51.633224;9.6157 51.63366;9.615428 51.633785;9.614884 51.633797;9.614222 51.634174;9.614133 51.634045;9.614061 51.63394;9.613732 51.633442;9.613621 51.633175;9.613491 51.63254;9.613448 51.632328;9.613224 51.63202;9.612302 51.63114;9.611316 51.630096;9.611002 51.62987;9.610549 51.629616;9.609893 51.62936;9.608402 51.62895;9.606115 51.628643;9.605468 51.628593;9.604962 51.62855;9.604234 51.62858;9.603463 51.628647;9.60267 51.628784;9.602329 51.62877;9.601718 51.628597;9.600881 51.628494;9.599999 51.628426;9.599205 51.62836;9.598435 51.62832;9.597912 51.628315;9.597253 51.628384;9.595982 51.62859;9.594781 51.62874;9.593214 51.62897;9.59242 51.62905;9.591853 51.62905;9.590924 51.62898;9.590459 51.628944;9.591493 51.628685;9.591543 51.628277;9.594286 51.62834;9.595762 51.62804;9.597172 51.627354;9.597311 51.627243;9.597267 51.62713;9.597108 51.627045;9.596952 51.62686;9.596949 51.627045;9.596562 51.62727;9.596017 51.627293;9.595567 51.627136;9.595499 51.627052;9.595545 51.62694;9.5955 51.626842;9.595297 51.626842;9.594978 51.62698;9.594569 51.627216;9.593727 51.627495;9.593182 51.627594;9.592502 51.627563;9.59114 51.62757;9.590735 51.627457;9.590395 51.6273;9.589989 51.627228;9.589674 51.627014;9.589383 51.626595;9.589248 51.626537;9.58893 51.62655;9.588517 51.626366;9.588321 51.626278;9.58769 51.626053;9.586805 51.625908;9.585697 51.62582;9.584519 51.625645;9.583906 51.625656;9.583519 51.625767;9.582837 51.626087;9.582289 51.626225;9.582201 51.62621;9.582017 51.626347;9.581937 51.62638;9.581804 51.626415;9.581701 51.626434;9.581199 51.626774;9.581084 51.62691;9.5809 51.627026;9.579516 51.627117;9.577798 51.62669;9.577505 51.62655;9.577437 51.626476;9.577419 51.62635;9.5774145 51.626247;9.577398 51.625942;9.575632 51.62571;9.574364 51.625607;9.573979 51.625465;9.573554 51.625095;9.573349 51.625053;9.5731 51.625053;9.572852 51.62498;9.57258 51.624825;9.572083 51.62467;9.57102 51.624424;9.570407 51.62435;9.569908 51.62438;9.569567 51.624546;9.569286 51.62487;9.568834 51.625385;9.568538 51.6255;9.568243 51.625526;9.567564 51.625496;9.567223 51.62555;9.567087 51.625675;9.566947 51.626026;9.566606 51.626415;9.566525 51.626507;9.565555 51.62681;9.564326 51.627354;9.563962 51.627438;9.563464 51.62745;9.563259 51.627533;9.562938 51.627853;9.562643 51.627937;9.562188 51.62798;9.561576 51.628075;9.56144 51.62816;9.561391 51.62844;9.56132 51.628666;9.559986 51.628475;9.559667 51.62869;9.559371 51.628784;9.55912 51.62891;9.559097 51.62898;9.559229 51.62925;9.559228 51.629402;9.559158 51.629627;9.55902 51.629883;9.559063 51.629993;9.559311 51.630203;9.559675 51.630264;9.559786 51.6304;9.559921 51.6305;9.56051 51.63056;9.559776 51.63139;9.559594 51.631557;9.559205 51.631836;9.55894 51.63193;9.558363 51.63214;9.558089 51.632355;9.558126 51.633183;9.558075 51.633743;9.557911 51.634293;9.557634 51.634884;9.557265 51.635487;9.556485 51.636436;9.555798 51.63711;9.555364 51.637447;9.554818 51.637787;9.554247 51.63806;9.553588 51.638344;9.552068 51.638863;9.550833 51.639286;9.54897 51.639854;9.548516 51.63998;9.547244 51.6402;9.545701 51.640377;9.545195 51.64038;9.544296 51.640385',
'9.492729 51.657818;9.491911 51.6578;9.490845 51.657726;9.48971 51.6576;9.488736 51.657455;9.487397 51.657215;9.48554 51.65682;9.482841 51.656296;9.480413 51.65598;9.479075 51.655876;9.476876 51.655647;9.474675 51.65535;9.473157 51.655094;9.471116 51.654697;9.469938 51.654484;9.4690075 51.654285;9.468326 51.654102;9.467624 51.65383;9.466221 51.653366;9.4660635 51.65334;9.465924 51.653366;9.465628 51.653534;9.465319 51.653706;9.46497 51.6539;9.464697 51.654037;9.464289 51.653843;9.46343285727729 51.6534859873385;9.438607 51.473083;9.448123 51.449764;9.558001 51.499886;9.5401757820731 51.6388450955936;9.539691 51.63826;9.537588 51.635483;9.537276 51.634987;9.53582 51.633053;9.534787 51.632008;9.534036 51.631424;9.533234 51.63089;9.532446 51.63045;9.530887 51.629658;9.529873 51.629177;9.528903 51.628765;9.527346 51.627983;9.52509 51.626907;9.524187 51.626522;9.523465 51.626293;9.523097 51.626205;9.522845 51.626144;9.522128 51.626038;9.521653 51.626007;9.520634 51.626003;9.519115 51.62591;9.51737 51.625935;9.51594 51.626026;9.511856 51.626476;9.508974 51.626717;9.508157 51.626827;9.507112 51.62705;9.506498 51.627213;9.505771 51.627464;9.500197 51.62961;9.499999 51.629673;9.498966 51.630005;9.497193 51.63058;9.496225 51.63097;9.496009 51.63114;9.495919 51.63131;9.495794 51.63152;9.4956875 51.631992;9.495595 51.63225;9.495344 51.63252;9.4948435 51.63294;9.494433 51.63323;9.493887 51.633698;9.493501 51.633945;9.492611 51.634495;9.491861 51.6348;9.491589 51.63504;9.491474 51.63522;9.491313 51.635704;9.491105 51.63656;9.490962 51.637737;9.490982 51.63827;9.491159 51.639114;9.491406 51.639904;9.491765 51.640736;9.492304 51.641804;9.494146 51.64576;9.494325 51.646057;9.494483 51.64624;9.495228 51.647217;9.496267 51.648468;9.497306 51.64955;9.497577 51.64995;9.497982 51.650723;9.49816 51.651283;9.498249 51.651863;9.498222 51.652664;9.498149 51.65362;9.498078 51.65403;9.497757 51.65497;9.497551 51.655445;9.497322 51.655785;9.496524 51.656597;9.496 51.657036;9.495613 51.657272;9.495181 51.65744;9.494793 51.65758;9.494295 51.657665;9.493567 51.657776;9.492729 51.657818',
'9.62885306094263 51.6351293468928;9.62860864472306 51.6316414931956;9.62906 51.63194;9.629718 51.632385;9.630251 51.632748;9.631186 51.63362;9.631715 51.63421;9.630751 51.634617;9.630675 51.63464;9.629713 51.634922;9.629546 51.634968;9.629403 51.635002;9.629174 51.635036;9.629012 51.63508;9.628881 51.635105;9.62885306094263 51.6351293468928-9.62831523598151 51.6274545093457;9.6227997344963 51.5487475304019;9.623248 51.549015;9.623607 51.549183;9.623992 51.549034;9.62459 51.54875;9.624937 51.54854;9.625091 51.54846;9.625174 51.548172;9.625739 51.54857;9.626669 51.548874;9.627057 51.548965;9.627495 51.54911;9.627854 51.549244;9.628308 51.54951;9.629031 51.548576;9.629581 51.548805;9.630736 51.549328;9.632101 51.549847;9.633 51.550255;9.634357 51.550167;9.6346445 51.55016;9.6361265 51.550495;9.636757 51.55052;9.637944 51.550327;9.638605 51.550205;9.640478 51.550125;9.641933 51.549896;9.642268 51.549847;9.642995 51.549805;9.643397 51.549805;9.645206 51.549915;9.646604 51.550262;9.647346 51.55045;9.647611 51.55052;9.648257 51.550823;9.64831 51.550934;9.648295 51.55103;9.64826 51.551266;9.648384 51.551456;9.648653 51.55174;9.648653 51.551876;9.647707 51.552727;9.64701 51.553646;9.6467 51.554314;9.646437 51.554874;9.645916 51.556026;9.645641 51.556633;9.645375 51.557297;9.645279 51.557648;9.645173 51.55803;9.644723 51.558823;9.64454 51.55953;9.642024 51.55948;9.640975 51.55944;9.639859 51.559402;9.639735 51.55939;9.639179 51.55934;9.638108 51.55906;9.637912 51.559048;9.637697 51.559032;9.637366 51.55901;9.63726 51.55902;9.636521 51.55909;9.63615 51.559242;9.635211 51.560184;9.634863 51.560535;9.633652 51.561756;9.633252 51.56216;9.632676 51.56274;9.6312475 51.564182;9.630754 51.56468;9.630642 51.564793;9.630463 51.564972;9.630146 51.56536;9.629233 51.566483;9.628843 51.56696;9.62802 51.56815;9.627961 51.568237;9.627098 51.569183;9.626427 51.570763;9.625753 51.572346;9.625301 51.573414;9.625264 51.573597;9.625217 51.573822;9.625368 51.575497;9.625456 51.576023;9.625665 51.577305;9.62575 51.578148;9.62584 51.580196;9.625923 51.580555;9.626131 51.580875;9.626316 51.581062;9.626407 51.58115;9.626938 51.58168;9.627308 51.581993;9.627783 51.582184;9.62958 51.583195;9.630077 51.583492;9.630446 51.58367;9.631307 51.583836;9.633856 51.584347;9.633955 51.58435;9.634296 51.584362;9.635808 51.58395;9.636525 51.583683;9.636801 51.58357;9.63714 51.58346;9.637333 51.583412;9.6386 51.58309;9.638966 51.582916;9.639129 51.582848;9.640334 51.582355;9.641121 51.582157;9.641616 51.582268;9.641845 51.58227;9.642046 51.582253;9.642763 51.582184;9.642891 51.582184;9.645628 51.582203;9.645598 51.58182;9.645393 51.581486;9.64509 51.581356;9.644826 51.581245;9.644924 51.58097;9.645208 51.580177;9.647616 51.58017;9.64783 51.57997;9.647581 51.57971;9.647517 51.5793;9.647669 51.579338;9.648144 51.57954;9.649395 51.580074;9.650112 51.579487;9.650773 51.578907;9.651857 51.578106;9.652336 51.57794;9.652476 51.577858;9.652569 51.5778;9.653092 51.577435;9.653695 51.576893;9.654216 51.576588;9.654583 51.57639;9.655411 51.576023;9.656392 51.57571;9.656989 51.575478;9.657624 51.575077;9.657849 51.574562;9.658045 51.574104;9.658491 51.57372;9.658994 51.573338;9.660217 51.572407;9.660776 51.572163;9.661878 51.57175;9.662063 51.571682;9.663505 51.5712;9.663639 51.57116;9.664465 51.570915;9.665786 51.570675;9.666151 51.570602;9.666441 51.570557;9.666956 51.57047;9.6674385 51.57035;9.6675825 51.570297;9.667956 51.570152;9.668294 51.570015;9.671148 51.56888;9.67211 51.568554;9.672512 51.568485;9.672973 51.56839;9.673148 51.56835;9.677189 51.56782;9.679145 51.567383;9.679854 51.567295;9.680179 51.567257;9.6809 51.56719;9.68125 51.567158;9.681784 51.567055;9.682151 51.566986;9.68334 51.566673;9.683855 51.566563;9.684259 51.566475;9.684637 51.566727;9.684771 51.566814;9.685565 51.56757;9.685766 51.56776;9.686199 51.56817;9.686338 51.568443;9.686492 51.568752;9.686466 51.569252;9.686403 51.569424;9.686365 51.569527;9.686729 51.569973;9.686943 51.570232;9.68702 51.570316;9.687169 51.570484;9.687558 51.571167;9.688068 51.572548;9.688195 51.572903;9.68874 51.574432;9.688803 51.574936;9.688913 51.575092;9.689255 51.575317;9.690037 51.575726;9.690467 51.576233;9.690539 51.57648;9.690465 51.576622;9.690379 51.576797;9.689489 51.578293;9.688766 51.579502;9.688393 51.579998;9.687812 51.580482;9.6857815 51.581863;9.685628 51.581944;9.684736 51.58176;9.682934 51.584656;9.680703 51.5873;9.680416 51.587643;9.679614 51.586914;9.679346 51.58676;9.678997 51.58666;9.678524 51.58666;9.67756 51.58671;9.67748 51.587326;9.674749 51.587288;9.672613 51.58721;9.672449 51.587776;9.672122 51.58856;9.672 51.58894;9.671982 51.58953;9.671838 51.589516;9.67116 51.589325;9.671016 51.58935;9.67028 51.590286;9.669624 51.591015;9.668949 51.591644;9.668703 51.59176;9.668189 51.591812;9.66669 51.59184;9.66572 51.591915;9.665288 51.591995;9.662941 51.59243;9.662242 51.592598;9.662009 51.59267;9.66183 51.592728;9.661624 51.59288;9.658037 51.59711;9.657892 51.597286;9.657205 51.598095;9.656698 51.598686;9.656525 51.59889;9.655947 51.599525;9.655863 51.59962;9.655724 51.599827;9.655596 51.6;9.653903 51.602215;9.653833 51.602325;9.65373 51.60246;9.653057 51.603348;9.652397 51.604057;9.651825 51.604603;9.65155 51.60483;9.650528 51.60568;9.650407 51.605778;9.649609 51.606354;9.649128 51.60655;9.64811 51.6067;9.647998 51.60671;9.647214 51.606808;9.64627 51.607014;9.643936 51.60724;9.64341 51.60728;9.641166 51.607445;9.640415 51.607582;9.639187 51.607925;9.638909 51.608006;9.638912 51.60829;9.63889 51.60836;9.638818 51.608585;9.638615 51.608715;9.638169 51.60886;9.637955 51.609066;9.636677 51.611927;9.636448 51.612167;9.636378 51.61235;9.636361 51.612938;9.63632 51.61357;9.636295 51.61392;9.63616 51.614582;9.636157 51.614784;9.636292 51.61493;9.636243 51.6152;9.636191 51.61538;9.636143 51.615486;9.636091 51.61557;9.635874 51.61648;9.635848 51.61726;9.6357975 51.618042;9.636063 51.61812;9.636053 51.61862;9.636069 51.6187;9.636221 51.61943;9.63641 51.61997;9.636142 51.620014;9.636025 51.620922;9.636045 51.62112;9.636052 51.62125;9.636059 51.621357;9.636301 51.621704;9.6363325 51.62178;9.636466 51.622128;9.636637 51.622574;9.636663 51.62272;9.636745 51.62328;9.636794 51.623604;9.636351 51.62366;9.634412 51.6241;9.634496 51.624302;9.633831 51.6245;9.633118 51.62472;9.632205 51.62502;9.632118 51.625046;9.631387 51.62528;9.631512 51.625477;9.631777 51.62589;9.631545 51.626007;9.631403 51.626064;9.631314 51.62612;9.630619 51.626476;9.630463 51.62655;9.630079 51.62672;9.629948 51.626728;9.62981 51.626755;9.629656 51.626778;9.629077 51.62702;9.628382 51.62741;9.62831523598151 51.6274545093457',
'9.701281 50.74938;9.551216 50.698515;9.568258 50.660863;9.747001 50.598103;9.749725 50.617407;9.714825 50.7431;9.701281 50.74938',
'9.793106 50.777277;9.714825 50.7431;9.749725 50.617407;9.851789 50.688984;9.793106 50.777277',
'9.890762 50.844311;9.846509 50.844179;9.793106 50.777277;9.851789 50.688984;9.8933786103543 50.6831671574967;9.893863 50.68354;9.894416 50.6839;9.895633 50.683235;9.896017 50.682983;9.89631 50.682896;9.896814 50.68286;9.897312 50.68277;9.898016 50.68268;9.898473 50.682644;9.89855206339916 50.6824435834765;9.8993746183857 50.6823285385707;9.899865 50.68273;9.899459 50.682854;9.899999 50.68319;9.900429 50.68351;9.901328 50.683937;9.901694 50.68408;9.902083 50.684135;9.902627 50.684;9.903103 50.68385;9.90358 50.683758;9.904194 50.68371;9.904701 50.683865;9.905709 50.684086;9.9062395 50.684326;9.906792 50.684715;9.907671 50.685257;9.912638 50.68834;9.911805 50.688843;9.911829 50.690002;9.912005 50.690754;9.91316 50.690422;9.913975 50.69014;9.913993 50.691025;9.914119 50.691605;9.91436 50.692238;9.914818 50.69235;9.914994 50.693073;9.915298 50.693462;9.91535 50.693745;9.915764 50.693966;9.916608 50.693985;9.916636 50.694233;9.918052 50.69428;9.919039 50.694572;9.91925 50.69373;9.923046 50.694347;9.922743 50.695133;9.923889 50.695385;9.923602 50.695835;9.921404 50.695465;9.920419 50.697342;9.920536 50.69744;9.920995 50.69764;9.921023 50.697845;9.919924 50.697666;9.918363 50.69716;9.918076 50.697536;9.918443 50.697678;9.9177685 50.698074;9.917618 50.6986;9.916949 50.69865;9.916961 50.698807;9.916427 50.698856;9.916661 50.699055;9.91623 50.69919;9.916089 50.699062;9.914954 50.699245;9.915191 50.69969;9.914302 50.699715;9.914361 50.7;9.914404 50.70022;9.911695 50.7003;9.910877 50.70048;9.909625 50.700607;9.909357 50.700726;9.908992 50.70089;9.908536 50.701656;9.908454 50.701797;9.907652 50.703156;9.907934 50.70364;9.91122 50.707825;9.91163 50.708733;9.9136915 50.7102;9.916777 50.712585;9.920933 50.71513;9.922328 50.71599;9.925571 50.718212;9.92637 50.718815;9.930495 50.72105;9.93077 50.72197;9.932588 50.723076;9.933414 50.723267;9.933759 50.723396;9.935399 50.724003;9.9342 50.72611;9.934867 50.7269;9.935387 50.727703;9.935632 50.728466;9.935618 50.72887;9.935333 50.72931;9.937627 50.73086;9.935776 50.73124;9.93794 50.73268;9.93605 50.733826;9.936333 50.73405;9.937654 50.735096;9.938602 50.735725;9.939409 50.73618;9.939603 50.736626;9.939593 50.73715;9.939418 50.73751;9.939061 50.737877;9.939891 50.738346;9.940817 50.738873;9.941531 50.739082;9.941254 50.740067;9.941052 50.740143;9.940928 50.74075;9.940526 50.741196;9.940939 50.741222;9.941238 50.741394;9.941516 50.74149;9.941456 50.741673;9.941 50.743;9.940591 50.743046;9.940573 50.743294;9.939709 50.743317;9.938844 50.74344;9.939978 50.74518;9.940189 50.745453;9.940649 50.74562;9.940525 50.7461;9.940121 50.747303;9.940104 50.747356;9.940008 50.747673;9.939906 50.748005;9.93973 50.749294;9.939469 50.749905;9.939589 50.75216;9.939572 50.75242;9.939463 50.75268;9.938539 50.75318;9.938941 50.7538;9.93898 50.75451;9.938921 50.754913;9.939325 50.75565;9.938313 50.756264;9.936184 50.75688;9.934231 50.757446;9.933746 50.757206;9.933118 50.757153;9.932991 50.75714;9.932747 50.757446;9.932935 50.757675;9.932843 50.75773;9.932757 50.757782;9.932687 50.757824;9.931888 50.75783;9.931591 50.75771;9.931404 50.757633;9.930985 50.757317;9.931068 50.75688;9.930465 50.75647;9.929452 50.757057;9.92895 50.757076;9.928758 50.756687;9.928232 50.756622;9.928218 50.75697;9.927712 50.75687;9.927248 50.7565;9.926806 50.756157;9.925874 50.75634;9.9254 50.75656;9.925039 50.75681;9.922315 50.757458;9.921683 50.75774;9.920943 50.758354;9.920383 50.758892;9.920071 50.759155;9.920944 50.760498;9.9212055 50.7609;9.921618 50.760994;9.921899 50.761253;9.921837 50.76153;9.921814 50.76163;9.921728 50.761818;9.922155 50.762585;9.922797 50.763733;9.922856 50.763824;9.923295 50.764496;9.923706 50.76481;9.924712 50.765568;9.925761 50.7666;9.925998 50.767002;9.925296 50.767242;9.925459 50.76764;9.925538 50.767834;9.925769 50.76796;9.926452 50.76791;9.926638 50.768097;9.927562 50.76858;9.928544 50.769527;9.928335 50.770386;9.927594 50.77097;9.927148 50.771465;9.927424 50.77155;9.92763 50.772575;9.927335 50.77272;9.92725 50.772957;9.927824 50.77309;9.927011 50.773495;9.925583 50.77397;9.92567 50.77413;9.92575 50.774273;9.925829 50.774776;9.926848 50.77549;9.9284525 50.776505;9.929556 50.777073;9.929942 50.77707;9.930259 50.776833;9.9308815 50.777035;9.9316225 50.776493;9.931572 50.7763;9.932157 50.775932;9.933244 50.775604;9.933546 50.775803;9.934046 50.77571;9.93455 50.77571;9.935094 50.775578;9.93568 50.77518;9.935962 50.774567;9.936322 50.77426;9.936704 50.77407;9.937345 50.774017;9.937415 50.774055;9.937621 50.77416;9.937434 50.77496;9.937415 50.77516;9.938153 50.775455;9.938449 50.775486;9.940271 50.775265;9.941361 50.775005;9.941568 50.77508;9.942144 50.776276;9.942352 50.776443;9.942248 50.776913;9.942906 50.776703;9.9427805 50.777206;9.942899 50.777237;9.943447 50.777378;9.944107 50.777367;9.944382 50.777496;9.944487 50.778004;9.94483 50.777958;9.944991 50.779083;9.94513 50.779182;9.945746 50.779163;9.945879 50.77902;9.945805 50.778713;9.946306 50.778694;9.946297 50.779243;9.94648 50.779224;9.948528 50.779007;9.9488 50.778904;9.947789 50.776623;9.946794 50.77496;9.946154 50.773975;9.945177 50.77309;9.944491 50.77204;9.943627 50.77121;9.944114 50.771294;9.944179 50.771305;9.944338 50.77133;9.9446945 50.771328;9.94665 50.77131;9.946738 50.77131;9.947146 50.771587;9.947849 50.772152;9.94835 50.772133;9.948804 50.772015;9.948818 50.77158;9.949362 50.771442;9.949742 50.77208;9.949997 50.772278;9.950964 50.772602;9.951267 50.772873;9.951389 50.77322;9.951784 50.773563;9.951976 50.773994;9.952037 50.774704;9.951831 50.77562;9.95148976632408 50.7771424271695;9.890762 50.844311',
'9.568258 50.660863;9.577544 50.522711;9.749379 50.567975;9.751861 50.570931;9.747001 50.598103;9.568258 50.660863',
'9.89855206339916 50.6824435834765;9.898559 50.682426;9.898898 50.682247;9.899308 50.682274;9.8993746183857 50.6823285385707;9.89855206339916 50.6824435834765-9.851789 50.688984;9.749725 50.617407;9.747001 50.598103;9.751861 50.570931;9.892342 50.533119;9.931875 50.58093;9.94294436216009 50.6277683346101;9.942242 50.627834;9.940037 50.62816;9.940461 50.62869;9.937273 50.628746;9.934394 50.628773;9.934282 50.628773;9.93406 50.628777;9.932319 50.629414;9.931525 50.62948;9.93066 50.629498;9.9300375 50.629143;9.929712 50.6289;9.9289665 50.629124;9.928017 50.629578;9.926908 50.629807;9.926426 50.630764;9.926182 50.63115;9.926051 50.631363;9.925296 50.632397;9.925034 50.632847;9.924425 50.63314;9.924041 50.63326;9.923772 50.63348;9.922938 50.633907;9.922695 50.634212;9.922175 50.634403;9.92178 50.634495;9.920744 50.634735;9.919775 50.63521;9.918127 50.63596;9.917132 50.636272;9.916269 50.63641;9.9157 50.636475;9.914719 50.636482;9.912574 50.636337;9.911435 50.636322;9.910343 50.63639;9.909868 50.636566;9.90958 50.636932;9.909242 50.637154;9.908953 50.637486;9.908602 50.638157;9.908219 50.638405;9.907796 50.638985;9.907489 50.63948;9.906767 50.639847;9.906364 50.6401;9.906204 50.64013;9.90584 50.6402;9.905339 50.64022;9.904561 50.6401;9.904099 50.639843;9.903549 50.639587;9.902403 50.639336;9.901642 50.63895;9.900883 50.638508;9.900421 50.63821;9.9 50.637733;9.899384 50.636597;9.898883 50.63662;9.897902 50.63654;9.896942 50.63635;9.895866 50.636097;9.895036 50.635742;9.894462 50.63553;9.893958 50.635387;9.893438 50.63538;9.892819 50.63537;9.892408 50.635387;9.891905 50.63532;9.891127 50.635155;9.890392 50.63487;9.887693 50.633957;9.887543 50.63408;9.887162 50.6341;9.88598 50.633938;9.885812 50.63391;9.885516 50.63387;9.884443 50.63381;9.88344 50.633816;9.882485 50.63388;9.881369 50.634007;9.879735 50.63428;9.878828 50.634563;9.878514 50.634785;9.878381 50.63496;9.878408 50.635258;9.878703 50.63621;9.878316 50.636265;9.878637 50.638504;9.877085 50.63871;9.877053 50.638885;9.877041 50.639046;9.876719 50.641773;9.877334 50.64181;9.877039 50.642666;9.877051 50.642742;9.876998 50.642918;9.876834 50.64329;9.87679 50.64342;9.876751 50.643616;9.877002 50.643486;9.877717 50.643044;9.87793 50.642956;9.877839 50.6432;9.877808 50.643288;9.877742 50.64384;9.877897 50.644234;9.878052 50.644577;9.878472 50.64482;9.878814 50.645103;9.878999 50.64513;9.879416 50.64543;9.879651 50.64575;9.879974 50.645878;9.880412 50.646133;9.880718 50.646637;9.881068 50.647026;9.881671 50.64747;9.882618 50.648083;9.883316 50.648785;9.883648 50.64945;9.8838215 50.6501;9.883972 50.65075;9.884054 50.65143;9.884062 50.651863;9.884578 50.65223;9.885266 50.65268;9.884975 50.652954;9.88503 50.65353;9.885002 50.654102;9.884961 50.654476;9.884762 50.65484;9.884526 50.655167;9.883434 50.656677;9.883098 50.65725;9.882904 50.657578;9.882842 50.657898;9.882871 50.658203;9.882589 50.658882;9.882589 50.659084;9.882587 50.659363;9.882587 50.659653;9.882587 50.659714;9.882587 50.6599;9.882584 50.660942;9.882661 50.66126;9.882532 50.66162;9.8820305 50.661964;9.880767 50.66339;9.880767 50.664505;9.879962 50.665295;9.879559 50.665604;9.87895 50.66597;9.8794 50.666416;9.879581 50.666763;9.880119 50.66702;9.880059 50.667713;9.880271 50.668087;9.88064 50.6683;9.881052 50.66837;9.88142 50.668526;9.881789 50.668755;9.881806 50.66913;9.880235 50.66968;9.879662 50.669624;9.879074 50.669746;9.878826 50.66991;9.878717 50.67013;9.878811 50.670334;9.879065 50.67047;9.879703 50.67051;9.880273 50.670376;9.881113 50.67065;9.881672 50.670815;9.882064 50.6711;9.881976 50.6713;9.881485 50.67164;9.881467 50.672005;9.881495 50.672302;9.882299 50.672527;9.882236 50.67273;9.881966 50.673023;9.881515 50.673203;9.8810215 50.673466;9.881388 50.673653;9.882351 50.673893;9.882919 50.673855;9.883514 50.673923;9.883794 50.674225;9.884094 50.674423;9.88453 50.674595;9.884922 50.674778;9.885269 50.675037;9.885524 50.67528;9.886286 50.67565;9.887154 50.67617;9.887247 50.676228;9.887393 50.676323;9.887785 50.67649;9.888292 50.676777;9.888662 50.677032;9.888736 50.677265;9.888705 50.677402;9.888611 50.67779;9.888707 50.677994;9.889083 50.678513;9.889854 50.679375;9.890439 50.680107;9.891047 50.680798;9.89217 50.682236;9.892595 50.682564;9.8933786103543 50.6831671574967;9.851789 50.688984-9.95198650664568 50.6660288037216;9.951894 50.665977;9.951503 50.665863;9.950877 50.665348;9.950392 50.66499;9.949702 50.664646;9.949192 50.66429;9.948793 50.663715;9.948694 50.663353;9.948621 50.663216;9.948479 50.662952;9.947924 50.662537;9.947669 50.662308;9.947801 50.662132;9.949036 50.661324;9.949734 50.660927;9.95067001159371 50.6604582536876;9.95198650664568 50.6660288037216-9.95051106254978 50.6597856848081;9.948948 50.658154;9.949135 50.6577;9.94943 50.656982;9.94969589240117 50.6563364154073;9.95051106254978 50.6597856848081',
'10.00172 50.67647;9.999999 50.676155;9.999555 50.676067;9.998764 50.675922;9.998121 50.67571;9.997048 50.67545;9.996087 50.675297;9.995174 50.67526;9.99406 50.675327;9.99392 50.675278;9.993257 50.675045;9.992428 50.6748;9.9915 50.674904;9.990796 50.674698;9.989643 50.674355;9.988384 50.67402;9.987843 50.67382;9.987808 50.673805;9.9875555 50.673717;9.985738 50.67284;9.98438 50.67223;9.983619 50.671787;9.983339 50.67143;9.981657 50.6705;9.981487 50.670414;9.978955 50.66911;9.978696 50.668976;9.977139 50.66817;9.974689 50.668583;9.974274 50.667385;9.973964 50.66668;9.973877 50.665825;9.971463 50.66589;9.970992 50.66627;9.969961 50.66702;9.969332 50.667416;9.968647 50.66729;9.968118 50.66715;9.967044 50.666958;9.966065 50.66692;9.964877 50.666832;9.963938 50.666622;9.96293 50.666355;9.962465 50.66697;9.962333 50.66723;9.961886 50.66758;9.960963 50.668095;9.960511 50.66826;9.960392 50.66803;9.960135 50.66777;9.959835 50.66757;9.959443 50.66737;9.959102 50.667404;9.958666 50.667263;9.958325 50.66728;9.958341 50.666977;9.958287 50.666584;9.957985 50.666355;9.957665 50.666286;9.957369 50.666275;9.957142 50.666363;9.956607 50.666992;9.955532 50.666653;9.954799 50.6665;9.954482 50.66653;9.954183 50.666508;9.953449 50.666195;9.952767 50.666286;9.952515 50.666245;9.952194 50.666145;9.95198650664568 50.6660288037216;9.95067001159371 50.6604582536876;9.950998 50.660294;9.95051106254978 50.6597856848081;9.94969589240117 50.6563364154073;9.949923 50.655785;9.95283 50.65424;9.954561 50.652977;9.955341 50.65241;9.960205 50.64869;9.962444 50.64692;9.964105 50.64577;9.965802 50.64428;9.967476 50.642647;9.968811 50.641174;9.968483 50.64077;9.967791 50.640232;9.966547 50.63965;9.966198 50.63933;9.965718 50.639133;9.965393 50.638863;9.965317 50.638557;9.964463 50.63799;9.963273 50.637344;9.96301 50.637203;9.961284 50.63641;9.960893 50.63615;9.960702 50.635777;9.960708 50.63504;9.960748 50.634705;9.960893 50.634083;9.960967 50.63388;9.961043 50.63368;9.961152 50.633373;9.961118 50.632923;9.961031 50.63197;9.960921 50.63122;9.960848 50.630733;9.96063 50.629253;9.959544 50.629242;9.955779 50.629208;9.955386 50.628937;9.95522 50.628605;9.955057 50.62849;9.954715 50.62848;9.95412 50.628498;9.95367 50.62859;9.953331 50.62874;9.952973 50.62897;9.952402 50.628918;9.951282 50.628742;9.950756 50.628643;9.949168 50.627907;9.948273 50.627625;9.947655 50.62747;9.947084 50.627388;9.946737 50.627117;9.94616 50.62679;9.945449 50.62716;9.944966 50.627407;9.944424 50.62763;9.94294436216009 50.6277683346101;9.931875 50.58093;10.0476335983343 50.5392128069546;10.047696 50.53932;10.047838 50.53968;10.047873 50.539898;10.048015 50.540794;10.047676 50.541058;10.047318 50.54142;10.047027 50.54174;10.046849 50.542015;10.046924 50.542435;10.0469265 50.543407;10.046929 50.544384;10.046985 50.544888;10.047082 50.545254;10.047246 50.545643;10.048263 50.546688;10.048678 50.547047;10.049185 50.547375;10.05002 50.548008;10.050153 50.54811;10.051127 50.548946;10.051607 50.54936;10.052046 50.54967;10.052415 50.55003;10.052738 50.55029;10.054104 50.55168;10.054782 50.552834;10.055108 50.553295;10.055316 50.553513;10.056489 50.554256;10.056996 50.554512;10.057726 50.554695;10.058277 50.55491;10.058872 50.555077;10.060523 50.555878;10.061099 50.55619;10.061262 50.556297;10.061513 50.55646;10.060542 50.556976;10.059867 50.55753;10.059399 50.55817;10.05909 50.558884;10.058506 50.559307;10.05801 50.55956;10.056894 50.559696;10.055597 50.559807;10.054688 50.559914;10.053892 50.56005;10.053303 50.56024;10.05222 50.560917;10.051929 50.561295;10.051956 50.561615;10.051803 50.562008;10.051489 50.562256;10.051268 50.562397;10.051174 50.56246;10.050972 50.56272;10.050818 50.563026;10.050708 50.563347;10.050374 50.5639;10.050021 50.56467;10.050074 50.565105;10.0500555 50.565395;10.049855 50.565727;10.049611 50.566;10.049475 50.56615;10.049231 50.5666;10.048173 50.56748;10.047638 50.568195;10.047438 50.568527;10.047534 50.56886;10.047448 50.569225;10.047294 50.569515;10.046489 50.570507;10.046219 50.5709;10.046065 50.571175;10.045847 50.57192;10.045338 50.572937;10.045187 50.57346;10.045128 50.5741;10.045089 50.57449;10.044982 50.574924;10.044987 50.575245;10.045176 50.57569;10.045456 50.576206;10.045648 50.576714;10.04577 50.577267;10.045699 50.5787;10.0455065 50.579514;10.045448 50.58005;10.045518 50.580368;10.045684 50.580803;10.045883 50.5811;10.046012 50.581295;10.046362 50.581654;10.046752 50.58193;10.04694 50.582157;10.046964 50.582466;10.047107 50.5827;10.047612 50.582897;10.048208 50.58304;10.048622 50.583294;10.049084 50.583755;10.049505 50.58432;10.049184 50.5857;10.048677 50.586864;10.048684 50.5873;10.048825 50.587708;10.048926 50.588226;10.048889 50.58881;10.048545 50.590233;10.048184 50.59118;10.048125 50.591335;10.047817 50.59182;10.047396 50.59268;10.047181 50.59351;10.047099 50.594093;10.047154 50.594658;10.0475235 50.595005;10.048029 50.595234;10.048491 50.59549;10.048588 50.595898;10.048795 50.597492;10.048888 50.598763;10.048734 50.59909;10.048683 50.599197;10.048182 50.599743;10.047834 50.6;10.047514 50.600235;10.046973 50.600636;10.046469 50.601067;10.04624 50.601425;10.045877 50.60167;10.045444 50.601772;10.044575 50.601887;10.043622 50.60209;10.042915 50.60239;10.042277 50.602894;10.041477 50.603786;10.040724 50.60429;10.040518 50.60459;10.0403805 50.605083;10.04006 50.605587;10.039536 50.606018;10.038987 50.606956;10.038876 50.607697;10.037827 50.609333;10.03734 50.610092;10.037267 50.610207;10.037037 50.611214;10.037196 50.612022;10.037238 50.61254;10.037667 50.61352;10.038007 50.614098;10.038904 50.614033;10.03926 50.61443;10.03965 50.61483;10.041055 50.61628;10.041487 50.61654;10.042216 50.616653;10.043057 50.616726;10.04456 50.61712;10.0449 50.61739;10.046014 50.618126;10.046355 50.61853;10.046697 50.618774;10.047516 50.619152;10.047653 50.61928;10.04763 50.619453;10.047197 50.619698;10.047013 50.61996;10.046306 50.620335;10.045849 50.620506;10.045392 50.620937;10.045437 50.621113;10.046051 50.621456;10.047304 50.622093;10.048175 50.62262;10.049146 50.623203;10.049874 50.623493;10.050465 50.623577;10.050807 50.623566;10.052561 50.623623;10.053086 50.62371;10.05509 50.623737;10.055255 50.623863;10.055431 50.624;10.056521 50.62527;10.056953 50.62566;10.057365 50.62583;10.058205 50.62625;10.058434 50.626396;10.058957 50.62647;10.059869 50.62644;10.060668 50.62625;10.061897 50.62608;10.063014 50.625717;10.0635605 50.62549;10.063539 50.625343;10.063562 50.6252;10.06584 50.625053;10.066609 50.6249;10.066706 50.62488;10.066889 50.624737;10.067232 50.62393;10.067324 50.623398;10.067349 50.62305;10.06737 50.622776;10.067325 50.622475;10.067554 50.622227;10.067669 50.62194;10.067578 50.621796;10.067555 50.621635;10.067797 50.621433;10.068399 50.621162;10.0688095 50.620857;10.069948 50.62057;10.070539 50.620426;10.070814 50.620266;10.070881 50.620125;10.071201 50.620064;10.071634 50.620052;10.072112 50.61969;10.072751 50.619415;10.0733 50.619476;10.073504 50.619476;10.074825 50.618958;10.075098 50.618973;10.075371 50.619274;10.075257 50.61956;10.075302 50.619747;10.075507 50.619835;10.075597 50.620052;10.075893 50.62011;10.07628 50.62002;10.076689 50.619835;10.077281 50.62001;10.078351 50.620182;10.078739 50.620125;10.078716 50.619778;10.079241 50.619648;10.079879 50.619595;10.081268 50.619705;10.081426 50.61988;10.081517 50.62024;10.081744 50.622433;10.08197 50.623833;10.081878 50.624393;10.082012 50.626545;10.081966 50.62692;10.081972 50.627098;10.082098 50.630356;10.081938 50.63086;10.082165 50.63158;10.08296 50.633156;10.082982 50.6333;10.082938 50.63343;10.081867 50.633556;10.080545 50.633846;10.079223 50.63425;10.078899 50.63432;10.078721 50.634453;10.078812 50.634686;10.079381 50.635464;10.079381 50.63562;10.079336 50.635754;10.079107 50.63607;10.078627 50.636547;10.077505 50.637524;10.076892 50.63806;10.076526 50.638554;10.076115 50.63942;10.075224 50.641903;10.074858 50.642323;10.074083 50.643;10.073809 50.643333;10.07367 50.64394;10.073374 50.644547;10.073219 50.64482;10.072208 50.646667;10.07136 50.648922;10.071382 50.64924;10.071653 50.650036;10.071631 50.650627;10.071472 50.651073;10.071036 50.65206;10.07035 50.653103;10.070281 50.653973;10.070348 50.654667;10.070256 50.655014;10.070028 50.65533;10.069823 50.65591;10.069478 50.65621;10.069279 50.65628;10.068519 50.656544;10.067494 50.656948;10.066237 50.657368;10.06562 50.6577;10.065302 50.658047;10.065187 50.658295;10.065118 50.65854;10.064912 50.65873;10.064616 50.65877;10.064342 50.658745;10.063954 50.658745;10.063702 50.658813;10.063246 50.659306;10.062925 50.659782;10.062285 50.66048;10.06009 50.66233;10.059884 50.66272;10.059563 50.663097;10.059108 50.663273;10.058126 50.66408;10.057395 50.664574;10.057028 50.66492;10.056799 50.665573;10.05691 50.666946;10.05675 50.66715;10.056593 50.66725;10.056406 50.66747;10.056133 50.667625;10.055899 50.66773;10.055698 50.667816;10.054898 50.66796;10.054054 50.668148;10.053756 50.66835;10.05346 50.66877;10.053158 50.670044;10.05318 50.67038;10.053455 50.67067;10.053773 50.670815;10.053888 50.670914;10.053818 50.67103;10.052927 50.67152;10.050664 50.673462;10.050459 50.673534;10.050047 50.67355;10.045273 50.673923;10.040365 50.67439;10.038627 50.674606;10.036871 50.67462;10.035181 50.67488;10.03442 50.675056;10.03417 50.67513;10.033903 50.675182;10.033289 50.675304;10.033212 50.675316;10.032425 50.67543;10.032107 50.67543;10.031826 50.67538;10.031416 50.67531;10.030516 50.67496;10.030445 50.674934;10.0290365 50.674408;10.028601 50.674248;10.027168 50.67377;10.027085 50.673744;10.026505 50.673634;10.026416 50.67363;10.025887 50.67362;10.025549 50.673748;10.025041 50.673782;10.024465 50.673576;10.023493 50.67323;10.023405 50.673214;10.022443 50.67303;10.02224 50.672997;10.021533 50.67294;10.020621 50.67294;10.020095 50.672985;10.019983 50.672997;10.019341 50.673096;10.01829 50.673313;10.01702 50.6736;10.011568 50.674816;10.007937 50.67557;10.002428 50.676456;10.00172 50.67647',
'9.385265 50.550325;9.38288 50.545981;9.374062 50.459826;9.487121 50.43613;9.559699 50.511437;9.385265 50.550325',
'9.570861 50.512093;9.559699 50.511437;9.487121 50.43613;9.5006 50.368444;9.614383 50.393762;9.615147 50.397521;9.570861 50.512093',
'9.749379 50.567975;9.577544 50.522711;9.570861 50.512093;9.615147 50.397521;9.731773 50.452666;9.749379 50.567975',
'9.751861 50.570931;9.749379 50.567975;9.731773 50.452666;9.76035076122409 50.4246656371098;9.760646 50.424866;9.760918 50.424995;9.761505 50.4252;9.761845 50.42529;9.762254 50.425087;9.762676 50.424984;9.7628 50.424957;9.76317 50.424904;9.764165 50.425007;9.765206 50.425083;9.766223 50.42546;9.767761 50.425785;9.768484 50.42586;9.7690525 50.425846;9.769687 50.425735;9.771387 50.425056;9.772027 50.424805;9.772687 50.424473;9.773028 50.424255;9.773166 50.423954;9.773238 50.423607;9.77342 50.423378;9.773648 50.42325;9.773719 50.42303;9.773494 50.42273;9.773881 50.4226;9.774249 50.422024;9.776387 50.421017;9.776751 50.42089;9.777091 50.420616;9.777209 50.42027;9.777738 50.41975;9.778076 50.41942;9.778759 50.419018;9.77985 50.41853;9.780055 50.418488;9.779984 50.419228;9.780223 50.41929;9.780773 50.41943;9.781496 50.419518;9.782992 50.41948;9.783776 50.42064;9.784318 50.420498;9.784405 50.420986;9.784742 50.421467;9.785707 50.422337;9.789332 50.42521;9.790894 50.42465;9.79108 50.42458;9.791557 50.42448;9.792981 50.424805;9.7933 50.424847;9.79461 50.425026;9.795449 50.425102;9.796194 50.425076;9.797148 50.424934;9.798374 50.424706;9.799999 50.42429;9.800372 50.424194;9.800961 50.424065;9.802186 50.423794;9.802682 50.424103;9.8049345 50.42311;9.805683 50.42281;9.806865 50.42219;9.80752 50.422558;9.808591 50.421883;9.809411 50.42122;9.810169 50.42001;9.810811 50.41904;9.811032 50.418617;9.811184 50.417828;9.811215 50.417034;9.811179 50.41692;9.811059 50.416542;9.810813 50.41622;9.810341 50.41586;9.809373 50.41537;9.808763 50.415062;9.808627 50.4149;9.808348 50.413746;9.808092 50.412674;9.807993 50.41227;9.808685 50.41235;9.809076 50.412395;9.809508 50.41245;9.812318 50.41237;9.813728 50.41241;9.81395 50.412216;9.814142 50.411934;9.814684 50.411236;9.814832 50.411125;9.814957 50.411034;9.8165 50.410854;9.81814 50.409645;9.818983 50.409126;9.819473 50.408207;9.819674 50.40783;9.820603 50.407845;9.821123 50.407906;9.821374 50.40782;9.82158 50.40749;9.821882 50.406696;9.8222885 50.406654;9.822496 50.40642;9.822679 50.406033;9.823248 50.40572;9.824385 50.405247;9.824741 50.405952;9.825168 50.406376;9.825662 50.40667;9.826274 50.40674;9.826999 50.40658;9.827681 50.406544;9.828293 50.406357;9.828568 50.40637;9.829992 50.40642;9.8306055 50.406406;9.831103 50.406296;9.832149 50.40596;9.833553 50.406036;9.834688 50.40578;9.834599 50.405506;9.836367 50.405354;9.83721 50.405037;9.837671 50.405327;9.838065 50.405575;9.838635 50.40529;9.840595 50.40405;9.840908 50.40428;9.84166 50.403763;9.843116 50.403072;9.844144 50.402325;9.844482 50.402412;9.84508 50.401634;9.845675 50.401157;9.846787 50.40083;9.847231 50.400585;9.847472 50.400455;9.847562 50.400227;9.847431 50.399994;9.847321 50.399796;9.847413 50.399464;9.847823 50.399235;9.848545 50.39954;9.849179 50.399643;9.850066 50.39934;9.850499 50.39901;9.850668 50.39926;9.854058 50.39892;9.855465 50.398407;9.859602 50.39751;9.860006 50.397438;9.861696 50.39863;9.862438 50.398727;9.863095 50.399998;9.863487 50.40045;9.864185 50.40103;9.864539 50.402008;9.863187 50.402306;9.862564 50.403576;9.866948 50.405685;9.866932 50.406075;9.866831 50.40627;9.868206 50.40702;9.869245 50.407417;9.869849 50.408154;9.869323 50.408657;9.869842 50.408985;9.870306 50.409283;9.870466 50.40938;9.87072 50.409546;9.871074 50.40945;9.871369 50.40937;9.872377 50.409103;9.873375 50.408978;9.873697 50.40815;9.873864 50.40772;9.874421 50.407032;9.875537 50.405437;9.875929 50.404877;9.876262 50.404675;9.876567 50.404343;9.876846 50.403606;9.877308 50.402725;9.878247 50.401833;9.880073 50.400364;9.880664 50.400066;9.880793 50.399998;9.881191 50.399796;9.882328 50.39935;9.883148 50.398846;9.883661 50.399128;9.883921 50.399208;9.884681 50.399445;9.885044 50.39949;9.8858795 50.399796;9.886086 50.399998;9.886396 50.400303;9.886481 50.400764;9.887567 50.400997;9.888062 50.401344;9.888531 50.402084;9.889615 50.402233;9.889948 50.402782;9.890945 50.4028;9.891686 50.40309;9.892595 50.403442;9.892909 50.40363;9.893407 50.403927;9.89519 50.403908;9.896533 50.40389;9.897981 50.40387;9.898276 50.403866;9.899999 50.403706;9.900951 50.40376;9.900993 50.403774;9.9013 50.403885;9.901762 50.404053;9.902924 50.404575;9.903409 50.404797;9.904537 50.405434;9.905663 50.406033;9.906091 50.406395;9.906668 50.40669;9.907745 50.40691;9.908352 50.407055;9.90865 50.40727;9.908846 50.407505;9.909008 50.40769;9.909251 50.407955;9.910243 50.408646;9.910421 50.408768;9.910845 50.408844;9.911663 50.40863;9.912074 50.40879;9.913046 50.40908;9.914467 50.409637;9.915754 50.410175;9.91667633963103 50.4104367830692;9.892342 50.533119;9.751861 50.570931',
'9.931875 50.58093;9.892342 50.533119;9.91667633963103 50.4104367830692;9.916737 50.410454;9.917199 50.410583;9.917868 50.410625;9.9182205 50.410645;9.918444 50.41066;9.919036 50.410606;9.919483 50.410995;9.92043 50.41155;9.922077 50.412262;9.922346 50.412598;9.922652 50.412804;9.923201 50.413177;9.923912 50.413815;9.92547 50.41521;9.926659 50.416313;9.9267435 50.416363;9.9272 50.416634;9.929754 50.417408;9.931536 50.41808;9.933113 50.418938;9.934491 50.41949;9.935822 50.419785;9.936381 50.41991;9.936727 50.41998;9.937993 50.420486;9.938108 50.420532;9.938251 50.420586;9.938752 50.420784;9.939438 50.421055;9.941737 50.422318;9.94257 50.422783;9.943332 50.42335;9.944217 50.423367;9.94614 50.42375;9.946864 50.423782;9.947591 50.423653;9.94832 50.42328;9.949091 50.423267;9.950135 50.423054;9.9522705 50.422398;9.952994 50.422604;9.95401 50.422794;9.955279 50.422897;9.957881 50.42321;9.957878 50.423485;9.958895 50.42385;9.960741 50.425;9.962041 50.426067;9.962202 50.426132;9.96256 50.42651;9.962627 50.4269;9.962509 50.42735;9.962368 50.427666;9.962117 50.428085;9.961975 50.428703;9.962038 50.42921;9.962146 50.429573;9.9623 50.429768;9.963132 50.430817;9.963512 50.43123;9.963859 50.43161;9.964051 50.43182;9.964279 50.43179;9.964367 50.43195;9.965445 50.433098;9.965724 50.433327;9.96641 50.433895;9.9674225 50.434593;9.968846 50.435074;9.968411 50.435432;9.96891 50.43552;9.969165 50.43484;9.97044 50.4352;9.970455 50.435204;9.970631 50.43525;9.970649 50.435257;9.970828 50.43534;9.97095 50.435406;9.971446 50.43563;9.97194 50.435818;9.97282 50.436382;9.972906 50.436867;9.973282 50.437878;9.973491 50.43852;9.973884 50.438805;9.975417 50.439793;9.975168 50.43995;9.97496 50.440083;9.977483 50.441822;9.977571 50.441883;9.977778 50.441723;9.978159 50.441692;9.978721 50.442184;9.979219 50.442177;9.98162 50.442154;9.981854 50.44214;9.9821205 50.442123;9.982473 50.443123;9.982949 50.44307;9.982886 50.442677;9.983496 50.44265;9.98349 50.44343;9.983943 50.44339;9.985302 50.44341;9.985777 50.443512;9.986388 50.443787;9.987086 50.444286;9.987285 50.444675;9.9875 50.444893;9.987645 50.445038;9.988193 50.44534;9.988273 50.44569;9.988428 50.44604;9.988989 50.446632;9.989258 50.446735;9.989987 50.44674;9.990248 50.447693;9.990581 50.448345;9.990847 50.44888;9.991182 50.4494;9.991586 50.44978;9.99224 50.45014;9.991943 50.450417;9.993721 50.45139;9.992693 50.452473;9.99409 50.453358;9.993405 50.45389;9.993175 50.45428;9.993031 50.45512;9.993119 50.455322;9.993433 50.455612;9.994581 50.456497;9.995674 50.45754;9.995949 50.4578;9.99615 50.458107;9.996435 50.45908;9.99661 50.459682;9.996794 50.460045;9.99692 50.460293;9.996469 50.460407;9.997074 50.46103;9.998667 50.46142;9.998837 50.46146;9.999071 50.461494;10.001676 50.462147;10.003088 50.46258;10.0037 50.462822;10.004974 50.464043;10.005401 50.46425;10.005922 50.464428;10.006629 50.464622;10.007932 50.46483;10.008527 50.464973;10.010259 50.465267;10.011152 50.46557;10.011602 50.46573;10.013381 50.46634;10.013976 50.466568;10.015756 50.466766;10.017357 50.466553;10.018441 50.466522;10.019205 50.467747;10.019702 50.46834;10.02024 50.4692;10.020281 50.469265;10.020351 50.469498;10.02078 50.471382;10.021111 50.47374;10.021415 50.474606;10.021784 50.475285;10.022284 50.475697;10.023189 50.476387;10.024879 50.477287;10.026526 50.47834;10.027805 50.47923;10.028308 50.479515;10.02957 50.48006;10.029886 50.480194;10.03001 50.480194;10.030822 50.480564;10.031166 50.48016;10.032025 50.480568;10.032977 50.480923;10.033156 50.480988;10.033677 50.481106;10.033539 50.481308;10.033238 50.481625;10.03306 50.481915;10.033014 50.482132;10.033103 50.482304;10.033396 50.48258;10.033509 50.482796;10.033394 50.48294;10.033394 50.483116;10.033526 50.483562;10.033614 50.484314;10.033566 50.48466;10.033497 50.48488;10.032477 50.484615;10.032251 50.484905;10.032905 50.48518;10.032474 50.48544;10.032292 50.485584;10.032109 50.485916;10.031903 50.486164;10.031562 50.48632;10.031605 50.48638;10.033033 50.486557;10.033488 50.486584;10.033756 50.486603;10.034846 50.486946;10.035954 50.487267;10.03643 50.487457;10.035226 50.48783;10.034816 50.488064;10.034634 50.48822;10.03452 50.488422;10.034221 50.489124;10.034176 50.48923;10.034418 50.49011;10.034784 50.49021;10.036048 50.490566;10.036066 50.491333;10.036111 50.491447;10.038424 50.491695;10.037694 50.492332;10.037238 50.492577;10.037058 50.492634;10.037645 50.492966;10.037893 50.493343;10.038226 50.493294;10.038778 50.493217;10.039547 50.493233;10.039818 50.49371;10.040472 50.494186;10.041238 50.494984;10.041085 50.49514;10.040827 50.495403;10.040537 50.495792;10.040303 50.49611;10.039243 50.498276;10.039002 50.498764;10.038369 50.49925;10.0372715 50.49994;10.037339 50.5;10.037916 50.500515;10.038307 50.500866;10.038643 50.501244;10.038868 50.501564;10.039007 50.501957;10.039022 50.50207;10.039148 50.50304;10.039229 50.50319;10.039293 50.50339;10.039392 50.503704;10.039469 50.50413;10.039586 50.50476;10.039634 50.504913;10.039916 50.505775;10.040117 50.506123;10.040342 50.506355;10.041074 50.506897;10.041355 50.507183;10.041824 50.507965;10.041923 50.50817;10.041987 50.50868;10.041981 50.509388;10.041928 50.509777;10.041815 50.510036;10.041331 50.51056;10.041213 50.51083;10.041196 50.51098;10.041163 50.511265;10.041044 50.511784;10.040791 50.512405;10.040529 50.512947;10.040305 50.513416;10.0400715 50.51379;10.039775 50.514095;10.0396595 50.514286;10.039633 50.514603;10.039806 50.51553;10.039941 50.51569;10.040218 50.515854;10.040417 50.515972;10.041384 50.51655;10.041443 50.517143;10.041794 50.517803;10.042218 50.51871;10.042447 50.520428;10.042412 50.52106;10.042289 50.521942;10.042255 50.522648;10.0421 50.522938;10.041694 50.523216;10.039975 50.523735;10.039223 50.523827;10.038837 50.52384;10.03881 50.524097;10.038785 50.524326;10.038842 50.525562;10.038923 50.527958;10.038698 50.528175;10.038359 50.52841;10.038182 50.528683;10.038164 50.529003;10.038605 50.529663;10.038929 50.529995;10.03942 50.5308;10.039454 50.531563;10.03944 50.531673;10.039414 50.531895;10.039611 50.532204;10.039785 50.53247;10.040179 50.532803;10.040866 50.533188;10.041714 50.53357;10.042079 50.533722;10.042401 50.533855;10.043132 50.534107;10.043567 50.534336;10.044029 50.534622;10.044353 50.53496;10.04449 50.53511;10.044958 50.535843;10.045419 50.53633;10.046186 50.537323;10.0469055 50.538143;10.04737 50.53876;10.0476335983343 50.5392128069546;9.931875 50.58093',
'9.501394 50.726315;9.478294 50.723407;9.381652 50.626993;9.385265 50.550325;9.559699 50.511437;9.570861 50.512093;9.577544 50.522711;9.568258 50.660863;9.551216 50.698515;9.501394 50.726315',
'8.411872 49.861064;8.3766078731602 49.8609265176098;8.376664 49.860905;8.377145 49.86072;8.378063 49.860313;8.379266 49.85964;8.380448 49.85884;8.382001 49.85759;8.382921 49.856647;8.384239 49.854553;8.384988 49.852627;8.385346 49.85102;8.38532 49.84965;8.385309 49.84919;8.384945 49.847683;8.384409 49.846104;8.38359 49.844162;8.381602 49.840084;8.380394 49.837532;8.379153 49.83491;8.378053 49.83231;8.377777 49.83121;8.377672 49.830406;8.377614 49.828915;8.377764 49.82763;8.37767 49.8275;8.377865 49.826538;8.378331 49.825047;8.379014 49.823444;8.379761 49.822205;8.380465 49.82122;8.382175 49.819267;8.383274 49.81837;8.384602 49.817303;8.387837 49.814655;8.389284 49.813477;8.390442 49.81248;8.394319 49.808945;8.398242 49.805374;8.400025 49.80349;8.400412 49.80308;8.4030695 49.8;8.403985 49.79894;8.406713 49.796192;8.407469 49.795177;8.408588 49.79332;8.411558 49.78748;8.412837 49.784966;8.413033 49.784416;8.4132 49.78386;8.413407 49.78323;8.413595 49.78234;8.413708 49.78158;8.413726 49.78061;8.413877 49.778618;8.414043 49.777687;8.414244 49.776997;8.414523 49.77648;8.414986 49.775818;8.417436 49.77281;8.417819 49.772438;8.418387 49.771885;8.420368 49.77013;8.4210205 49.769592;8.422117 49.768806;8.422898 49.768337;8.424268 49.767742;8.426044 49.7672;8.427216 49.76686;8.428948 49.76652;8.430348 49.766277;8.432097 49.76601;8.434154 49.76571;8.434806 49.765633;8.435853 49.765537;8.4369 49.765472;8.437923 49.765434;8.439598 49.765415;8.441617 49.765438;8.443056 49.765503;8.445415 49.765614;8.448296 49.765827;8.4508705 49.766125;8.452966 49.766415;8.456008 49.766987;8.457521 49.767345;8.459947 49.76792;8.461563 49.768246;8.4640465 49.768696;8.465408 49.76887;8.466471 49.768906;8.467559 49.768894;8.468689 49.76887;8.469735 49.768803;8.470456 49.76873;8.47116730598206 49.7686221485515;8.460533 49.823472;8.411872 49.861064-8.47367857868001 49.7543410885013;8.47322 49.754047;8.464321 49.748383;8.460424 49.74578;8.458799 49.744587;8.457369 49.743465;8.455668 49.742;8.454518 49.7409;8.454008 49.740376;8.453933 49.740295;8.453497 49.73979;8.449779 49.735508;8.448221 49.733513;8.446207 49.73052;8.445649 49.729607;8.444927 49.728638;8.444072 49.727695;8.441092 49.724586;8.440863 49.7243;8.439729 49.72334;8.438379 49.72236;8.437446 49.721752;8.435686 49.720665;8.433705 49.719646;8.431785 49.7188;8.429902 49.718037;8.428488 49.717503;8.426176 49.71668;8.425678 49.716522;8.424544 49.71617;8.421557 49.715305;8.419921 49.71495;8.418383 49.7147;8.413674 49.714;8.4107685 49.713528;8.409225 49.71328;8.399996 49.71177;8.398069 49.711452;8.396378 49.711174;8.395476 49.71102;8.392523 49.710327;8.389927 49.709595;8.387968 49.70901;8.386448 49.708527;8.386357 49.708492;8.381728 49.70691;8.381335 49.706757;8.3787775 49.70585;8.373841 49.70374;8.369916 49.701897;8.366355 49.7;8.364087 49.698788;8.362541 49.697903;8.361855 49.697487;8.361404 49.697174;8.361 49.69679;8.359109 49.69466;8.357657 49.692368;8.357504 49.69209;8.357301 49.691715;8.357075 49.69111;8.3568325 49.69008;8.355872 49.68598;8.354982 49.682667;8.3547 49.681507;8.354664 49.68111;8.354762 49.680607;8.354901 49.680157;8.355987 49.677612;8.356584 49.67618;8.35681 49.67577;8.358589 49.67339;8.358974 49.67269;8.3592005 49.672203;8.359651 49.671345;8.360854 49.668648;8.361485 49.66754;8.361999 49.666782;8.363335 49.66503;8.364639 49.66379;8.365694 49.6629;8.367066 49.661736;8.367868 49.66091;8.368303 49.660694;8.368899 49.660133;8.369276 49.659687;8.369567 49.659195;8.369726 49.65886;8.370116 49.657764;8.370491 49.656895;8.371707 49.654083;8.372253 49.65272;8.372885 49.650555;8.373577 49.648293;8.373879 49.647152;8.374424 49.64477;8.375056 49.642628;8.375672 49.640694;8.376628 49.63832;8.37732 49.636497;8.37816 49.6346;8.379683 49.63142;8.379754 49.63127;8.379841 49.63111;8.381253 49.62849;8.381694 49.627728;8.382822 49.625988;8.383496 49.625072;8.384099 49.624344;8.388021 49.62;8.388256 49.619728;8.389098 49.61883;8.389472 49.618504;8.390533 49.61756;8.391348 49.61688;8.394012 49.61494;8.397156 49.612835;8.399372 49.61157;8.399995 49.611263;8.402833 49.60988;8.403468 49.60957;8.403847 49.609425;8.405145 49.608574;8.406184 49.60781;8.406933 49.607197;8.408392 49.605885;8.411029 49.603046;8.411519 49.602375;8.412013 49.601532;8.412311 49.600815;8.412477 49.60003;8.412809 49.598938;8.413205 49.597633;8.413707 49.59658;8.414073 49.59595;8.414428 49.595333;8.414645 49.59501;8.416437 49.592476;8.420473 49.586575;8.422479 49.583973;8.422919 49.5831;8.424604 49.58407;8.424985 49.58422;8.425782 49.58432;8.429602 49.584625;8.434184 49.58419;8.438355 49.58385;8.439532 49.585148;8.439811 49.58554;8.440043 49.58599;8.44054 49.587223;8.440602 49.587574;8.440503 49.589287;8.442422 49.589714;8.443433 49.58988;8.444149 49.58999;8.445398 49.59023;8.446004 49.590317;8.447105 49.590378;8.449374 49.59034;8.451082 49.590275;8.45668 49.589912;8.4568405 49.589897;8.457212 49.58987;8.461541 49.58958;8.464349 49.58943;8.464411 49.589394;8.46457053110293 49.5892911826462;8.484234 49.636042;8.47367857868001 49.7543410885013',
'8.96703454514572 51.5059241252329;8.966883 51.505886;8.964656 51.50532;8.963012 51.504974;8.9618845 51.504734;8.960162 51.50423;8.960018 51.50426;8.95985 51.50422;8.959594 51.504177;8.957489 51.503845;8.955396 51.5034;8.955148 51.503345;8.954865 51.50328;8.954136 51.503113;8.952962 51.502842;8.95249 51.50273;8.950063 51.502155;8.948492 51.501785;8.948408 51.501766;8.947342 51.501537;8.946724 51.501404;8.94635 51.50131;8.94572 51.501152;8.945228 51.501015;8.944919 51.50092;8.944811 51.500885;8.944411 51.50074;8.942637 51.500095;8.942372 51.5;8.940796 51.49941;8.940618 51.49934;8.940474 51.499275;8.940356 51.49921;8.940255 51.499157;8.939685 51.498856;8.939388 51.498695;8.93904 51.49859;8.937504 51.498116;8.936658 51.497852;8.934696 51.49737;8.934468 51.4973;8.933632 51.49703;8.933197 51.496807;8.931794 51.49609;8.929974 51.495155;8.9298115 51.49507;8.929701 51.495014;8.929542 51.49493;8.928994 51.49465;8.928632 51.494495;8.927645 51.49407;8.927271 51.49368;8.927089 51.49349;8.926923 51.49341;8.926595 51.493378;8.924117 51.49334;8.923776 51.493336;8.923304 51.493313;8.921689 51.49323;8.921156 51.493202;8.921077 51.4932;8.92091 51.49318;8.920266 51.49309;8.919753 51.493023;8.918469 51.49284;8.917213 51.49266;8.916926 51.492603;8.916705 51.49256;8.913908 51.492016;8.913662 51.491966;8.911609 51.491558;8.911025 51.491444;8.910952 51.49142;8.909457 51.49092;8.909283 51.49085;8.909144 51.490807;8.90872 51.49075;8.908477 51.49072;8.907997 51.490654;8.907798 51.490635;8.907384 51.4906;8.907136 51.490517;8.906866 51.490376;8.905999 51.490166;8.905691 51.49009;8.905522 51.490017;8.904766 51.489693;8.904116 51.489525;8.902295 51.489063;8.901696 51.48891;8.901523 51.48885;8.901369 51.488785;8.901228 51.488728;8.900843 51.488567;8.899985 51.488094;8.899276 51.48766;8.898822 51.487404;8.898731 51.487354;8.897421 51.486618;8.897257 51.486385;8.8971405 51.486214;8.896845 51.485783;8.896739 51.48566;8.896535 51.485443;8.896477 51.485382;8.896078 51.484955;8.894597 51.483395;8.894478 51.483288;8.894399 51.483215;8.893391 51.482895;8.891056 51.48215;8.890912 51.482067;8.890821 51.482;8.8906555 51.481876;8.890657 51.481617;8.890721 51.480953;8.890754 51.48061;8.890815 51.480385;8.891006 51.479645;8.891048 51.47948;8.891144 51.479156;8.891164 51.4786;8.890965 51.477707;8.890968 51.477543;8.8912 51.47713;8.891618 51.47644;8.89181 51.476128;8.891935 51.475887;8.891977 51.47581;8.892612 51.4746;8.89271 51.474415;8.892825 51.47425;8.892701 51.473637;8.893067 51.47293;8.893132 51.472763;8.89327 51.472397;8.893343 51.472206;8.893558 51.471664;8.893764 51.471546;8.8950815 51.470806;8.895179 51.470753;8.895484 51.47058;8.89566 51.470478;8.896275 51.470207;8.897646 51.46961;8.897895 51.46946;8.898201 51.469276;8.89875 51.46892;8.898978 51.468765;8.899937 51.468143;8.900387 51.46783;8.900519 51.46774;8.900606 51.467667;8.901319 51.46706;8.901447 51.466927;8.902136 51.466263;8.902756 51.465664;8.902936 51.465652;8.906377 51.46543;8.906865 51.46502;8.908143 51.464046;8.908386 51.46332;8.909327 51.463066;8.909683 51.462753;8.911048 51.46156;8.912538 51.459827;8.913657 51.458523;8.91342 51.4577;8.913259 51.45714;8.913239 51.45686;8.913312 51.456715;8.913352 51.456635;8.914262 51.455936;8.914537 51.455486;8.914637 51.455322;8.91376 51.452934;8.913631 51.452682;8.913654 51.45254;8.913613 51.45229;8.913704 51.452206;8.914058 51.45189;8.914182 51.451782;8.915302 51.451065;8.915385 51.45101;8.915799 51.450855;8.916243 51.450794;8.916402 51.450726;8.916489 51.450607;8.916495 51.450466;8.9165 51.45037;8.916528 51.45006;8.916549 51.449844;8.916632 51.4489;8.916645 51.448765;8.916765 51.448723;8.917545 51.449173;8.917695 51.4492;8.9179735 51.449245;8.919097 51.449154;8.919283 51.44914;8.919419 51.449055;8.91942 51.448914;8.919299 51.44871;8.91923 51.448517;8.919199 51.448433;8.919264 51.44818;8.919422 51.447556;8.919868 51.446125;8.920124 51.446114;8.920633 51.44609;8.921632 51.446037;8.921615 51.445908;8.921591 51.445755;8.921523 51.445267;8.921511 51.44518;8.921293 51.443626;8.9212055 51.443443;8.920998 51.44336;8.920054 51.44309;8.919988 51.44298;8.920132 51.44226;8.920265 51.442207;8.921106 51.442226;8.921374 51.44223;8.921574 51.44214;8.921622 51.442028;8.921598 51.441803;8.921584 51.44167;8.921454 51.440426;8.921234 51.43982;8.92112 51.43972;8.921046 51.43969;8.920783 51.43958;8.919116 51.43914;8.918936 51.439095;8.918872 51.43899;8.918945 51.438686;8.919032 51.43832;8.919054 51.438145;8.919128 51.437508;8.918871 51.437176;8.918255 51.43673;8.918186 51.436596;8.918108 51.436443;8.918146 51.436195;8.918459 51.43537;8.918516 51.435265;8.918716 51.434875;8.9191065 51.43417;8.919235 51.433887;8.919252 51.433693;8.91926 51.433605;8.918701 51.43332;8.91844 51.433186;8.918412 51.433075;8.91843 51.432907;8.918477 51.43279;8.918662 51.432377;8.918834 51.43199;8.918927 51.431515;8.918754 51.430504;8.918734 51.43025;8.918741 51.430134;8.91941 51.430153;8.92019 51.430176;8.920833 51.43018;8.921219 51.430183;8.923899 51.430363;8.92404 51.43037;8.924172 51.43037;8.926705 51.430374;8.926982 51.430374;8.927804 51.43044;8.927891 51.430447;8.929425 51.43071;8.931051 51.43099;8.931208 51.431015;8.931287 51.43103;8.93187 51.43107;8.932246 51.431107;8.933051 51.43117;8.934467 51.43126;8.934611 51.431225;8.934902 51.43116;8.936513 51.430794;8.936599 51.430782;8.937507 51.430656;8.939021 51.430492;8.940584 51.43032;8.940709 51.430313;8.941518 51.430252;8.941653 51.430244;8.9419565 51.4302;8.9428215 51.430077;8.942924 51.430046;8.944079 51.429703;8.945321 51.429333;8.946795 51.42872;8.947277 51.428406;8.947454 51.428257;8.947569 51.427982;8.947611 51.427856;8.947857 51.427124;8.948029 51.426617;8.948071 51.426025;8.947886 51.425415;8.947642 51.42462;8.947553 51.42413;8.947573 51.423573;8.94758 51.423355;8.947407 51.42305;8.947135 51.422615;8.947039 51.422424;8.947003 51.422333;8.946881 51.422005;8.946833 51.421215;8.946844 51.42063;8.946849 51.420414;8.946204 51.41986;8.945708 51.419437;8.945649 51.41933;8.9457035 51.41922;8.945752 51.419144;8.9458475 51.41899;8.945989 51.418884;8.946214 51.41868;8.946273 51.418606;8.946409 51.41843;8.946618 51.418163;8.946664 51.41802;8.946708 51.417885;8.946803 51.417587;8.947552 51.416874;8.948528 51.416176;8.948967 51.415863;8.949038 51.415825;8.949501 51.41559;8.95034 51.414738;8.950759 51.414288;8.951125 51.41389;8.95128 51.413734;8.951505 51.41351;8.951637 51.413376;8.951669 51.413155;8.951664 51.413002;8.951531 51.412907;8.951408 51.412846;8.951153 51.412724;8.949011 51.412243;8.948286 51.41217;8.945829 51.412125;8.944886 51.412106;8.943572 51.412075;8.943196 51.41204;8.943015 51.412003;8.942871 51.41196;8.942764 51.411934;8.942683 51.411896;8.942426 51.411766;8.942066 51.41148;8.941973 51.411407;8.941808 51.41126;8.941706 51.41115;8.941599 51.411037;8.941328 51.410748;8.941017 51.410236;8.940937 51.409798;8.94102 51.409515;8.941078 51.409363;8.941234 51.40895;8.942049 51.40679;8.9421015 51.406654;8.942114 51.406475;8.942104 51.40632;8.942086 51.40601;8.941638 51.405296;8.9409895 51.404266;8.940806 51.403946;8.940543 51.403473;8.940492 51.40331;8.940394 51.402992;8.940403 51.402855;8.940426 51.402664;8.94042935723719 51.4026455351955;8.970092 51.411734;8.96703454514572 51.5059241252329-8.895603 51.39283;8.895378 51.39283;8.894922 51.39268;8.894771 51.39263;8.894372 51.39261;8.894046 51.392666;8.893828 51.392662;8.892657 51.392643;8.892346 51.39264;8.891892 51.392635;8.890242 51.392635;8.890158 51.39262;8.889758 51.39256;8.889199 51.39236;8.889075 51.392307;8.88881874585144 51.3921969572821;8.892695 51.38802;8.90717062439262 51.3924552488707;8.90642 51.39249;8.904619 51.392567;8.903775 51.392654;8.902949 51.392742;8.902492 51.39253;8.9 51.392788;8.899866 51.392803;8.896981 51.392574;8.896693 51.392574;8.896352 51.39258;8.896123 51.39258;8.895991 51.392597;8.895738 51.392788;8.895603 51.39283',
'9.020549 51.51889;9.017747 51.51777;9.016296 51.516468;9.013916 51.515095;9.013482 51.515335;9.010753 51.51483;9.008402 51.514225;9.00655 51.51323;9.005467 51.512474;9.004643 51.51205;9.000827 51.51263;9.000591 51.512634;9.000099 51.512634;9 51.512627;8.999843 51.51261;8.999649 51.512592;8.999177 51.512516;8.998848 51.51246;8.998297 51.51245;8.998195 51.51245;8.997981 51.512447;8.997126 51.512325;8.996767 51.512196;8.995086 51.511738;8.994469 51.511593;8.99426 51.51146;8.9941435 51.511383;8.993579 51.51121;8.993074 51.511055;8.991973 51.510883;8.991412 51.510708;8.988637 51.510094;8.987449 51.50983;8.985715 51.50948;8.982109 51.508762;8.981885 51.508724;8.981149 51.508595;8.979707 51.508347;8.979609 51.508324;8.977839 51.507942;8.975984 51.50746;8.974426 51.506847;8.97387 51.50672;8.973797 51.506702;8.973382 51.506607;8.972639 51.506435;8.972496 51.5064;8.971904 51.50626;8.971748 51.50622;8.971529 51.506172;8.971032 51.506115;8.970647 51.506073;8.970361 51.5061;8.970197 51.50623;8.970261 51.506504;8.970205 51.506596;8.96831 51.506245;8.96703454514572 51.5059241252329;8.970092 51.411734;8.989987 51.405665;9.08468103810798 51.4565544495735;9.084723 51.457;9.0852585 51.458824;9.085357 51.458992;9.085631 51.45948;9.086208 51.46015;9.086579 51.46068;9.086738 51.460903;9.086738 51.461052;9.086738 51.461113;9.086711 51.461185;9.086619 51.461246;9.086374 51.461403;9.08542 51.461823;9.085347 51.461853;9.084986 51.46192;9.082512 51.46192;9.081779 51.46203;9.080184 51.46262;9.0793085 51.462944;9.0782585 51.463585;9.07761 51.464157;9.077297 51.464428;9.077158 51.464653;9.0772 51.464867;9.077288 51.465;9.077421 51.465206;9.077817 51.465813;9.079006 51.467358;9.079212 51.467625;9.079592 51.46829;9.07985 51.46873;9.079892 51.468803;9.080057 51.469143;9.080886 51.47085;9.081045 51.471172;9.081284 51.471626;9.082236 51.47343;9.08228 51.473503;9.083034 51.474743;9.083472 51.47546;9.083505 51.475536;9.083585 51.475727;9.083712 51.475796;9.083803 51.475937;9.083925 51.47612;9.08604 51.47928;9.086111 51.479385;9.08615 51.479446;9.086302 51.47974;9.086329 51.479855;9.086416 51.47998;9.086488 51.480106;9.086935 51.480488;9.087121 51.48084;9.087159 51.480907;9.08767 51.481724;9.087806 51.481937;9.088009 51.482254;9.0881 51.4824;9.088987 51.48342;9.091063 51.48593;9.091227 51.48613;9.0913515 51.486294;9.091735 51.486797;9.09189 51.48708;9.091949 51.487244;9.092018 51.487434;9.092018 51.488888;9.092024 51.489056;9.092107 51.491306;9.092114 51.49146;9.09212 51.491627;9.092143 51.4922;9.092178 51.493023;9.092185 51.49321;9.092212 51.493572;9.09223 51.493767;9.092275 51.494255;9.092274 51.494354;9.092136 51.49455;9.091282 51.495068;9.091066 51.495197;9.090823 51.495346;9.090642 51.49546;9.088865 51.49659;9.088075 51.498478;9.085872 51.49869;9.085813 51.498737;9.085005 51.49918;9.084443 51.49949;9.083426 51.5;9.083 51.500217;9.081395 51.501038;9.080885 51.5013;9.07995 51.501823;9.079664 51.501938;9.078812 51.50237;9.078577 51.502487;9.078442 51.502556;9.077448 51.50311;9.077141 51.50325;9.076986 51.503265;9.07682 51.503284;9.076738 51.503292;9.073755 51.502495;9.072953 51.502285;9.06998 51.501503;9.069476 51.501373;9.069209 51.501232;9.069156 51.50118;9.068056 51.50008;9.067989 51.500015;9.067784 51.49981;9.06768 51.499706;9.067117 51.499645;9.063962 51.499317;9.060927 51.499004;9.060853 51.49901;9.060747 51.499016;9.060646 51.499035;9.06038 51.499214;9.059933 51.49955;9.059337 51.500004;9.058705 51.50049;9.058403 51.50096;9.058244 51.50121;9.057996 51.501663;9.057778 51.502163;9.057648 51.502464;9.057545 51.502518;9.057195 51.502518;9.057095 51.502506;9.057023 51.5025;9.05685 51.502483;9.055955 51.502396;9.055782 51.502377;9.054066 51.502254;9.0538845 51.502243;9.050574 51.502026;9.049673 51.50204;9.045895 51.50211;9.042345 51.502174;9.0421095 51.50218;9.041873 51.50216;9.041742 51.502148;9.041671 51.502144;9.041557 51.502136;9.041454 51.50213;9.040299 51.501965;9.03965 51.501873;9.039364 51.501884;9.039179 51.50195;9.0390835 51.502045;9.039011 51.502117;9.03856 51.502674;9.03844 51.50283;9.038365 51.50289;9.038089 51.50312;9.037494 51.50344;9.0369835 51.50367;9.036592 51.503784;9.0364685 51.50379;9.036372 51.503796;9.035752 51.503834;9.034972 51.503925;9.034631 51.504063;9.034315 51.504314;9.033393 51.50505;9.033282 51.50515;9.033208 51.505215;9.033145 51.50527;9.033002 51.50539;9.032772 51.505524;9.032699 51.505566;9.032426 51.505722;9.032063 51.50588;9.031814 51.505985;9.0317335 51.50602;9.03112 51.506344;9.030936 51.50644;9.03058 51.506653;9.030149 51.506996;9.030077 51.507076;9.0297785 51.507427;9.029393 51.507816;9.029202 51.50801;9.028951 51.508263;9.028463 51.508755;9.028073 51.50901;9.02781 51.50918;9.027443 51.509415;9.027193 51.50948;9.025919 51.5098;9.025539 51.509975;9.025287 51.510094;9.025122 51.510174;9.024683 51.510433;9.02458 51.510494;9.024151 51.51082;9.023226 51.512314;9.023164 51.512695;9.023142 51.513012;9.023591 51.51415;9.02359 51.51428;9.023604 51.514435;9.023655 51.515102;9.023716 51.515614;9.023707 51.515804;9.023615 51.51625;9.023584 51.51643;9.023462 51.516953;9.023394 51.51706;9.02334 51.517147;9.023114 51.517345;9.022973 51.517437;9.022197 51.51793;9.021834 51.518154;9.020947 51.518715;9.0208235 51.518795;9.020737 51.51883;9.020549 51.51889',
'9.3446979329571 51.5694388435725;9.344136 51.56901;9.34367 51.56879;9.342897 51.56832;9.342351 51.567947;9.341604 51.567265;9.341319 51.567066;9.340955 51.56681;9.340386 51.566486;9.339325 51.56616;9.338858 51.565914;9.338391 51.56559;9.33811 51.565292;9.338012 51.565037;9.337898 51.5645;9.337559 51.56401;9.336969 51.563763;9.336157 51.563255;9.335997 51.563038;9.336003 51.562782;9.336135 51.562363;9.336182 51.56199;9.336048 51.561634;9.336034 51.56129;9.335975 51.56102;9.335736 51.560757;9.335558 51.560364;9.335387 51.559807;9.333914 51.558964;9.333661 51.55882;9.333252 51.558582;9.332257 51.557972;9.331438 51.557228;9.331183 51.557053;9.3307 51.55671;9.33027 51.55636;9.330078 51.556202;9.329776 51.555996;9.328873 51.555557;9.3270855 51.554806;9.326456 51.554623;9.325769 51.554417;9.325194 51.554173;9.324681 51.55388;9.324208 51.553658;9.32411 51.55363;9.323676 51.553513;9.322605 51.553356;9.321328 51.55325;9.320299 51.553066;9.319887 51.55298;9.319105 51.55282;9.317522 51.552723;9.316637 51.55255;9.316268 51.552345;9.316166 51.551872;9.31621 51.551437;9.316314 51.551247;9.316604 51.551083;9.316975 51.550842;9.317304 51.550777;9.317493 51.550625;9.317641 51.55037;9.317808 51.54991;9.31781 51.549488;9.317853 51.54917;9.318102 51.548748;9.318144 51.548492;9.318372 51.54833;9.318477 51.548073;9.318731 51.547977;9.319013 51.54787;9.3193035 51.54768;9.319489 51.547516;9.319588 51.54726;9.319677 51.54703;9.319742 51.546623;9.31968 51.54644;9.319353 51.546146;9.318654 51.54617;9.317955 51.54618;9.31783 51.5461;9.317877 51.545567;9.318186 51.54517;9.318228 51.54484;9.318708 51.544243;9.318584 51.544163;9.317967 51.543983;9.317513 51.54397;9.316793 51.54399;9.31661 51.54386;9.315951 51.54377;9.315705 51.54365;9.315604 51.543335;9.315667 51.543167;9.31604 51.54266;9.315835 51.542465;9.315716 51.541866;9.31582 51.541676;9.316253 51.54151;9.31646 51.541344;9.316588 51.540924;9.316485 51.540783;9.316055 51.540527;9.3155155 51.540302;9.315273 51.540203;9.314534 51.539955;9.314206 51.539753;9.313899 51.53947;9.313736 51.53912;9.313924 51.538826;9.313925 51.538647;9.314008 51.53847;9.313968 51.53824;9.314012 51.537807;9.3139715 51.537678;9.313767 51.537487;9.313437 51.53747;9.312284 51.537697;9.3117895 51.537617;9.311375 51.537483;9.311239 51.537373;9.311117 51.53711;9.310973 51.536797;9.311016 51.536324;9.311248 51.53574;9.311559 51.535088;9.311563 51.53455;9.311566 51.534157;9.311427 51.533466;9.311635 51.53315;9.311574 51.533073;9.311038 51.53289;9.310608 51.532635;9.31022 51.532288;9.31008 51.53184;9.310103 51.53138;9.310292 51.530933;9.310645 51.530285;9.310997 51.52994;9.311556 51.529472;9.312364 51.528534;9.313046 51.528027;9.313914 51.527466;9.314234 51.52731;9.314575 51.527138;9.314658 51.52696;9.314395 51.526485;9.314294 51.526142;9.314164 51.52531;9.314097 51.52488;9.314265 51.52442;9.314389 51.524235;9.31511 51.52359;9.315527 51.523216;9.315507 51.5231;9.314996 51.522858;9.314485 51.522423;9.313707 51.521885;9.313174 51.521385;9.312848 51.521027;9.312154 51.520412;9.311867 51.52;9.311539 51.519783;9.311049 51.51935;9.310437 51.51863;9.310254 51.518223;9.310136 51.517357;9.309521 51.517174;9.309361 51.51641;9.30924 51.51627;9.308603 51.515972;9.30846 51.51582;9.308482 51.515667;9.308751 51.51522;9.308752 51.51503;9.308589 51.514866;9.307934 51.514492;9.307813 51.51426;9.307794 51.513954;9.3079 51.513622;9.308108 51.513367;9.308252 51.51319;9.308438 51.5129;9.3084 51.51262;9.308277 51.51247;9.307633 51.512455;9.30685 51.51247;9.306124 51.512486;9.30538 51.512478;9.304317 51.51228;9.303443 51.51215;9.30253 51.51207;9.302061 51.513184;9.301972 51.51373;9.30142 51.514366;9.300958 51.51454;9.299999 51.514538;9.299528 51.514538;9.297947 51.514355;9.297185 51.514324;9.295575 51.514584;9.295042 51.5146;9.294374 51.514545;9.293502 51.51438;9.293124 51.514282;9.292268 51.514168;9.291999 51.514164;9.291466 51.51416;9.289846 51.514168;9.28952 51.514187;9.28904 51.514313;9.28663 51.515156;9.286375 51.514763;9.285968 51.514305;9.285723 51.514137;9.282632 51.514164;9.282213 51.514133;9.281913 51.513966;9.281467 51.513474;9.281117 51.513016;9.280579 51.512486;9.279916 51.51224;9.278913 51.51196;9.276018 51.51106;9.275809 51.511044;9.275254 51.511086;9.274658 51.511246;9.274083 51.511314;9.273512 51.510593;9.273274 51.51022;9.272565 51.509617;9.272407 51.5095;9.272342 51.50945;9.272352 51.50902;9.272383 51.50839;9.272425 51.50811;9.272532 51.507805;9.272288 51.50769;9.271036 51.507317;9.270088 51.5072;9.269725 51.50713;9.269449 51.507088;9.269053 51.50688;9.268567 51.506123;9.268171 51.50595;9.267255 51.50525;9.26704 51.505085;9.26679 51.50477;9.2666235 51.504566;9.266486 51.504356;9.266324 51.504112;9.266239 51.504013;9.26607 51.50389;9.26588 51.50325;9.26571 51.502384;9.265645 51.501995;9.265545 51.501537;9.265212 51.501034;9.264427 51.50037;9.264158 51.500134;9.264021 51.50001;9.263761 51.49975;9.263751 51.499443;9.263946 51.49914;9.26428 51.498753;9.264348 51.498383;9.264348 51.49796;9.264279 51.497784;9.264175 51.49773;9.26406 51.497738;9.263053 51.4983;9.26272 51.49843;9.26196 51.498726;9.260735 51.498898;9.259202 51.498936;9.258559 51.498928;9.2579775 51.498997;9.257314 51.498962;9.256825 51.498737;9.256483 51.498634;9.256167 51.498554;9.255635 51.498417;9.255364 51.49835;9.254999 51.498287;9.253258 51.497993;9.2515135 51.49769;9.25134 51.497673;9.251147 51.497795;9.250849 51.497944;9.250587 51.498024;9.248527 51.498024;9.247205 51.497982;9.245936 51.497936;9.245268 51.497868;9.243881 51.497726;9.243508 51.497723;9.243215 51.49772;9.242553 51.497654;9.242265 51.497616;9.241503 51.49752;9.240858 51.4973;9.240496 51.497097;9.240296 51.496975;9.240078 51.49665;9.239572 51.495598;9.239068 51.49453;9.238772 51.49417;9.238503 51.493965;9.238231 51.49376;9.237862 51.493595;9.237274 51.493336;9.236833 51.493126;9.236343 51.492966;9.236045 51.492798;9.236051 51.492607;9.236383 51.49228;9.236794 51.492184;9.236882 51.492165;9.237268 51.49183;9.237872 51.491493;9.238376 51.49132;9.238778 51.491196;9.2389965 51.491093;9.239185 51.49095;9.239245 51.49089;9.239668 51.490692;9.237905 51.490467;9.237088 51.490242;9.236599 51.490227;9.236383 51.490215;9.236035 51.490288;9.235678 51.49045;9.235445 51.49084;9.235268 51.490685;9.234928 51.49086;9.234366 51.49084;9.233935 51.490925;9.23309517885711 51.4908520425648;9.294709 51.395943;9.353863 51.368836;9.427358 51.397326;9.448123 51.449764;9.438607 51.473083;9.3446979329571 51.5694388435725',
'8.7876441093862 51.3874223291241;8.787501 51.3874;8.78729 51.387367;8.786681 51.38717;8.786231 51.387024;8.7858095 51.386913;8.78481 51.386665;8.782375 51.386063;8.781108 51.385868;8.780351 51.38582;8.780263 51.385822;8.78015 51.385826;8.778907 51.38587;8.778458 51.38589;8.778187 51.385902;8.778057 51.385883;8.777108 51.38574;8.776382 51.385693;8.776121 51.38571;8.775118 51.385765;8.774726 51.38581;8.774614 51.3858;8.773723 51.385696;8.773495 51.38567;8.772486 51.385468;8.772144 51.3854;8.771693 51.38526;8.77107 51.385056;8.770922 51.384995;8.770615 51.384872;8.770516 51.384804;8.76962 51.384186;8.768773 51.38365;8.768653 51.38359;8.767652 51.383076;8.76758 51.383038;8.76723 51.382793;8.766818 51.3825;8.766633 51.382374;8.766568 51.382336;8.764309 51.381042;8.763608 51.380653;8.763204 51.380417;8.762651 51.38009;8.7623005 51.379883;8.762219 51.37981;8.761785 51.379417;8.76153 51.37912;8.761248 51.37879;8.760797 51.37852;8.76036 51.378273;8.760282 51.378246;8.760135 51.378197;8.759534 51.377995;8.757375 51.37727;8.757157 51.377235;8.756634 51.37717;8.756279 51.377132;8.755992 51.3771;8.755779 51.37708;8.7550335 51.37708;8.754292 51.377083;8.7530985 51.3771;8.752688 51.377117;8.752575 51.377438;8.75239 51.37744;8.75165 51.37745;8.751473 51.377445;8.750815 51.377453;8.75049 51.377457;8.750063 51.37727;8.749923 51.377205;8.749183 51.37686;8.748813 51.37669;8.748203 51.37641;8.748068 51.37636;8.747931 51.376316;8.747617 51.376244;8.747183 51.376144;8.747054 51.3761;8.74561 51.37556;8.745082 51.375362;8.744617 51.375282;8.744537 51.375275;8.744247 51.375248;8.743187 51.37515;8.742704 51.375122;8.742288 51.3751;8.742081 51.375084;8.741361 51.375042;8.740344 51.375088;8.740098 51.375084;8.739474 51.37503;8.739381 51.37501;8.73876 51.37487;8.73837 51.374763;8.738131 51.374683;8.737645 51.374523;8.734729 51.37316;8.73416 51.372894;8.732793 51.37238;8.729957 51.37202;8.728118 51.37233;8.722024 51.37359;8.718798 51.373688;8.7127075 51.37324;8.709978 51.3739;8.706179 51.374542;8.702245 51.375504;8.700825 51.37739;8.697056 51.376743;8.695095 51.37658;8.689419 51.37566;8.689328 51.375828;8.68484836494186 51.3746250815106;8.713993 51.297415;8.789522 51.297964;8.7876441093862 51.3874223291241',
'8.88881874585144 51.3921969572821;8.886907 51.391376;8.884775 51.390606;8.884001 51.39032;8.883892 51.39028;8.883541 51.390133;8.88347 51.390083;8.883109 51.38984;8.882903 51.389687;8.882785 51.3896;8.882375 51.38929;8.88214 51.389114;8.881753 51.388832;8.881154 51.388393;8.881009 51.388287;8.880857 51.388176;8.879628 51.387283;8.878958 51.386955;8.87725 51.38612;8.876014 51.38565;8.87463 51.385204;8.873449 51.38484;8.87334 51.384785;8.872447 51.384354;8.871976 51.384113;8.870486 51.383343;8.86921 51.382687;8.868586 51.382362;8.867384 51.381744;8.866383 51.381237;8.865524 51.380806;8.865008 51.380547;8.864495 51.380367;8.86324 51.379948;8.862012 51.37954;8.858911 51.378506;8.85682 51.377808;8.856405 51.377666;8.854954 51.37717;8.854831 51.377148;8.854639 51.377113;8.854234 51.377113;8.848314 51.37908;8.848225 51.379112;8.848064 51.379166;8.847702 51.37929;8.847663 51.37941;8.847635 51.3795;8.847554 51.379543;8.847476 51.37959;8.847183 51.37963;8.8468895 51.379753;8.846779 51.379894;8.846699 51.38;8.846651 51.380066;8.846559 51.380165;8.846162 51.380287;8.845801 51.380314;8.8439455 51.38134;8.843642 51.381508;8.842765 51.38197;8.840222 51.382645;8.838519 51.383095;8.838268 51.38325;8.838141 51.383408;8.838042 51.38353;8.837943 51.3837;8.8378315 51.383892;8.837669 51.384277;8.837458 51.385193;8.836764 51.388195;8.83671 51.388424;8.832885 51.38699;8.832664 51.386906;8.831603 51.386547;8.831391 51.386475;8.830199 51.386078;8.82988 51.385967;8.82752 51.38516;8.827355 51.3852;8.827267 51.385258;8.826492 51.386616;8.825806 51.387814;8.824921 51.38862;8.824695 51.38883;8.82461 51.388905;8.823678 51.38959;8.823483 51.389732;8.823424 51.389786;8.823295 51.38976;8.823007 51.389698;8.822621 51.389614;8.819762 51.388992;8.819603 51.388927;8.819194 51.38875;8.818798 51.38857;8.818483 51.388542;8.817906 51.38867;8.814823 51.38935;8.81446 51.38941;8.814029 51.389473;8.813623 51.389538;8.813514 51.389565;8.812905 51.389725;8.812052 51.38993;8.811684 51.389977;8.810883 51.39008;8.810729 51.3901;8.810033 51.390125;8.809742 51.390137;8.809194 51.390163;8.808586 51.390152;8.807539 51.39013;8.806287 51.39005;8.805682 51.39012;8.805112 51.39028;8.804264 51.39052;8.804175 51.39054;8.804096 51.39055;8.8039 51.39057;8.803753 51.390583;8.803373 51.390553;8.802651 51.39034;8.802393 51.39027;8.801298 51.389984;8.801159 51.38995;8.799997 51.389652;8.795955 51.38859;8.791886 51.387535;8.791811 51.387527;8.791724 51.387516;8.791583 51.387516;8.789541 51.38751;8.788636 51.38751;8.788231 51.387493;8.788099 51.38749;8.787924 51.387466;8.7876441093862 51.3874223291241;8.789522 51.297964;8.85121 51.281078;8.858517 51.286226;8.882008 51.316977;8.892695 51.38802;8.88881874585144 51.3921969572821',
'9.08468103810798 51.4565544495735;8.989987 51.405665;9.029462 51.329357;9.138035 51.336567;9.10981308788432 51.443696081891;9.109678 51.44368;9.109089 51.44359;9.108909 51.443703;9.108207 51.44361;9.108009 51.443596;9.106841 51.443504;9.106452 51.443474;9.1055765 51.44341;9.10544 51.44339;9.104336 51.44324;9.10384 51.443176;9.103008 51.44314;9.102645 51.44314;9.102171 51.443207;9.101519 51.443333;9.10034 51.44356;9.099999 51.44362;9.093826 51.44469;9.089536 51.446365;9.089278 51.446518;9.089159 51.446587;9.089081 51.446632;9.08899 51.446686;9.088281 51.44722;9.0868225 51.448395;9.086581 51.448677;9.086517 51.448753;9.086409 51.448883;9.086326 51.449017;9.08583 51.44981;9.085609 51.450348;9.085544 51.4505;9.085275 51.451355;9.085215 51.45156;9.084903 51.452744;9.084665 51.453476;9.084643 51.453743;9.084622 51.454;9.084609 51.454926;9.08463 51.455933;9.084634 51.456055;9.08468103810798 51.4565544495735',
'9.23309517885711 51.4908520425648;9.232381 51.49079;9.232133 51.49078;9.229261 51.490604;9.228733 51.49057;9.228237 51.49038;9.228229 51.490246;9.228301 51.49013;9.228651 51.48986;9.228813 51.48958;9.22874 51.48937;9.228498 51.48918;9.228122 51.48895;9.227808 51.488804;9.227381 51.48861;9.227191 51.488533;9.226802 51.488564;9.226354 51.488625;9.225975 51.48885;9.225977 51.489113;9.225979 51.489223;9.225796 51.489532;9.225665 51.489586;9.225491 51.489628;9.225245 51.489624;9.224811 51.489365;9.224677 51.488773;9.224568 51.488495;9.224198 51.488132;9.223902 51.487846;9.2235985 51.487404;9.223536 51.487286;9.223512 51.48718;9.223506 51.486916;9.223498 51.486446;9.223567 51.486153;9.223468 51.48563;9.223368 51.48529;9.223232 51.485138;9.222949 51.48487;9.222717 51.484673;9.22258 51.48459;9.222358 51.48453;9.221719 51.484447;9.221502 51.484333;9.220872 51.484135;9.220288 51.48378;9.219028 51.4832;9.218399 51.482685;9.218227 51.482544;9.217847 51.482235;9.217362 51.48184;9.217163 51.481674;9.216939 51.481335;9.216918 51.481125;9.217136 51.48059;9.217782 51.479305;9.217875 51.478886;9.217747 51.477676;9.217658 51.47684;9.217601 51.476498;9.217582 51.476387;9.2174835 51.47581;9.217506 51.475555;9.217687 51.47526;9.217925 51.475037;9.218412 51.47457;9.218618 51.47423;9.21896 51.47288;9.218939 51.472557;9.21862 51.471977;9.218402 51.471584;9.218227 51.470833;9.218199 51.470715;9.218178 51.470627;9.218103 51.4703;9.217997 51.46975;9.217818 51.468933;9.217761 51.46867;9.21774 51.468487;9.217546 51.466805;9.217456 51.466225;9.217286 51.465183;9.217261 51.46503;9.217215 51.46474;9.217156 51.464417;9.217127 51.46425;9.216933 51.46286;9.216839 51.46219;9.21682 51.462048;9.216779 51.461304;9.216817 51.4611;9.216848 51.460938;9.216817 51.460503;9.216805 51.460358;9.216692 51.459972;9.216606 51.45985;9.21647 51.459797;9.216301 51.459778;9.216213 51.459778;9.215748 51.459934;9.215134 51.460316;9.215025 51.460384;9.214372 51.460876;9.2137375 51.461353;9.213613 51.46139;9.2134905 51.461426;9.213105 51.461464;9.212019 51.46152;9.211161 51.461563;9.204451 51.461906;9.203414 51.461956;9.20329 51.46197;9.202984 51.462013;9.199996 51.462666;9.196626 51.463406;9.193081 51.46418;9.191142 51.46467;9.190985 51.464718;9.1897 51.46512;9.189496 51.465183;9.188614 51.46546;9.187143 51.46593;9.18558 51.46641;9.185386 51.466423;9.185161 51.46638;9.18507 51.466366;9.183759 51.465946;9.183388 51.465828;9.183261 51.46579;9.181777 51.46532;9.181536 51.465244;9.178436 51.464264;9.177374 51.46393;9.175475 51.463306;9.175264 51.463238;9.175123 51.463192;9.1750145 51.463135;9.17484 51.463043;9.174695 51.462967;9.174537 51.46284;9.174483 51.462723;9.174426 51.4626;9.174461 51.461742;9.17446 51.461475;9.174458 51.460766;9.174366 51.460648;9.174184 51.46058;9.174075 51.46054;9.17382 51.460533;9.173589 51.46054;9.173534 51.460457;9.173585 51.460197;9.173577 51.46;9.173519 51.45987;9.17325 51.45974;9.172221 51.459446;9.171945 51.459366;9.17185 51.45934;9.171705 51.459274;9.171625 51.45924;9.1715145 51.459156;9.170669 51.458378;9.17042 51.458145;9.170291 51.458027;9.169492 51.45729;9.1694145 51.457195;9.169361 51.45713;9.169135 51.45686;9.16907 51.456783;9.168981 51.456646;9.168542 51.455963;9.168162 51.455395;9.168107 51.455334;9.167961 51.455173;9.167902 51.455116;9.16777 51.454998;9.167358 51.45468;9.165542 51.45334;9.165209 51.453094;9.165058 51.45299;9.164772 51.452785;9.164614 51.452682;9.1645355 51.452618;9.164365 51.452477;9.164258 51.452385;9.164195 51.452293;9.16382 51.45179;9.163445 51.45128;9.163062 51.450756;9.162751 51.450245;9.162717 51.449768;9.162714 51.449356;9.162834 51.44876;9.162912 51.448376;9.162849 51.44802;9.162777 51.447792;9.16269 51.447586;9.162551 51.44725;9.16248 51.447075;9.162431 51.446915;9.162349 51.446636;9.162136 51.446243;9.161997 51.445988;9.161915 51.445656;9.161868 51.445465;9.161856 51.445354;9.16182 51.44504;9.161818 51.444942;9.161823 51.444847;9.161829 51.44471;9.161807 51.444614;9.161745 51.44438;9.161504 51.444126;9.160754 51.44378;9.159913 51.443394;9.157862 51.442978;9.155207 51.442608;9.154893 51.442562;9.154412 51.442513;9.15399 51.44247;9.149433 51.442017;9.148853 51.44196;9.148093 51.441883;9.146493 51.441708;9.146361 51.441692;9.146047 51.44175;9.14577 51.4418;9.145632 51.44188;9.145202 51.44213;9.143427 51.443485;9.142206 51.44464;9.142072 51.444767;9.141874 51.444954;9.141322 51.4456;9.141208 51.445732;9.140355 51.446815;9.140286 51.446903;9.139752 51.447433;9.139459 51.447857;9.138837 51.4483;9.137431 51.449295;9.136285 51.449795;9.13589 51.449966;9.135659 51.450066;9.135581 51.4501;9.135428 51.450047;9.134195 51.4486;9.134078 51.448463;9.1339655 51.448364;9.1330385 51.447548;9.132727 51.44699;9.13266 51.44687;9.132126 51.44643;9.131839 51.446346;9.131743 51.446316;9.131203 51.446274;9.131025 51.446266;9.130345 51.44625;9.129717 51.446247;9.129329 51.446243;9.1291485 51.44623;9.128745 51.4462;9.1286335 51.446186;9.125882 51.445824;9.124756 51.445675;9.122321 51.445343;9.12084 51.44514;9.120653 51.445114;9.120459 51.445087;9.119997 51.445023;9.119827 51.445;9.117983 51.444744;9.117897 51.444733;9.117388 51.444668;9.116993 51.444614;9.116869 51.44461;9.116732 51.44461;9.116564 51.444607;9.115984 51.444603;9.115475 51.444603;9.114961 51.4446;9.114496 51.444492;9.114334 51.444454;9.114214 51.44443;9.114152 51.44442;9.114089 51.44441;9.113051 51.444206;9.112912 51.444183;9.112107 51.44406;9.111985 51.44402;9.111673 51.44391;9.111561 51.44389;9.111137 51.44384;9.110697 51.44379;9.109846 51.4437;9.10981308788432 51.443696081891;9.138035 51.336567;9.140784 51.334224;9.294709 51.395943;9.23309517885711 51.4908520425648',
'8.68484836494186 51.3746250815106;8.682353 51.373955;8.682872 51.373688;8.682343 51.37358;8.681595 51.373276;8.681235 51.373444;8.680586 51.373215;8.679757 51.373016;8.679289 51.372803;8.67762 51.371628;8.67724 51.371246;8.677108 51.370937;8.677051 51.3706;8.67709 51.370216;8.677454 51.369713;8.680477 51.3672;8.68091 51.36654;8.681092 51.366104;8.681694 51.363735;8.681986 51.363373;8.682439 51.363075;8.682919 51.36253;8.682916 51.3624;8.682268 51.36202;8.681912 51.361694;8.681002 51.360394;8.680496 51.360207;8.680226 51.359913;8.679683 51.359756;8.679123 51.35995;8.678091 51.359947;8.678208 51.359554;8.676976 51.359226;8.676686 51.35907;8.676463 51.3588;8.676219 51.358883;8.676035 51.359066;8.6742935 51.35789;8.673671 51.357197;8.673157 51.357;8.673339 51.35679;8.673027 51.35652;8.672778 51.35649;8.672521 51.356274;8.672416 51.35607;8.672124 51.355865;8.671842 51.355785;8.67137 51.35573;8.671188 51.355812;8.671028 51.355995;8.670063 51.35554;8.669388 51.355427;8.668621 51.355423;8.668101 51.355633;8.667752 51.355225;8.666297 51.35566;8.665892 51.355648;8.665261 51.355453;8.665365 51.354385;8.663611 51.35415;8.661675 51.35403;8.660686 51.353897;8.660095 51.353645;8.659782 51.353333;8.659732 51.35238;8.659553 51.351788;8.65783 51.349068;8.655485 51.34928;8.655609 51.34829;8.655186 51.34827;8.655092 51.34814;8.6550865 51.34769;8.654894 51.347256;8.654377 51.346703;8.654378 51.34662;8.654472 51.34655;8.6547 51.346485;8.654852 51.346466;8.654815 51.346375;8.654743 51.3462;8.654744 51.346058;8.655157 51.345085;8.65516 51.344894;8.655123 51.344658;8.655102 51.344524;8.655067 51.344307;8.655025 51.344227;8.654702 51.343597;8.654696 51.343422;8.654734 51.343315;8.654756 51.34322;8.654775 51.34314;8.654808 51.343002;8.654797 51.342922;8.65475 51.342594;8.654751 51.34237;8.654607 51.341953;8.654609 51.34152;8.654645 51.341408;8.654804 51.34128;8.654916 51.341125;8.6549 51.341038;8.654885 51.340958;8.654341 51.340534;8.654039 51.340298;8.65379 51.340145;8.653092 51.339714;8.652494 51.3397;8.651876 51.339745;8.6513815 51.33978;8.651149 51.339798;8.650356 51.339924;8.649579 51.340046;8.649196 51.340107;8.648899 51.340157;8.648601 51.340206;8.64744 51.340397;8.646458 51.340565;8.646339 51.340588;8.645031 51.340748;8.643572 51.340927;8.643408 51.340992;8.6432 51.341072;8.642661 51.341476;8.642571 51.341545;8.641692 51.34209;8.641599 51.342148;8.640699 51.34259;8.640366 51.34269;8.6399765 51.342808;8.6397705 51.34287;8.639443 51.342957;8.63876 51.343002;8.638732 51.34309;8.638644 51.34337;8.637989 51.343662;8.637786 51.34372;8.637672 51.343704;8.637295 51.34355;8.636507 51.343063;8.636157 51.343014;8.635431 51.342678;8.635261 51.342606;8.634712 51.34237;8.634214 51.34204;8.633755 51.341633;8.633417 51.341328;8.633301 51.341217;8.633014 51.340946;8.632856 51.340797;8.632506 51.340576;8.632191 51.340515;8.632185 51.34037;8.63175 51.340187;8.631578 51.340115;8.630962 51.339806;8.630626 51.33956;8.630501 51.33949;8.630314 51.33941;8.630033 51.33929;8.629843 51.33923;8.629589 51.33915;8.629142 51.339184;8.628606 51.33902;8.628255 51.338974;8.628124 51.33894;8.627582 51.338802;8.626351 51.3382;8.626192 51.33812;8.623794 51.33724;8.623354 51.33707;8.623229 51.337025;8.621403 51.33651;8.621252 51.336468;8.620996 51.336346;8.620817 51.336082;8.620597 51.335476;8.62039 51.334904;8.62001 51.33424;8.619947 51.334126;8.619824 51.33382;8.619682 51.333466;8.61964 51.3332;8.619743 51.33313;8.619689 51.333008;8.620032 51.332233;8.620061 51.33215;8.62033 51.3314;8.620528 51.33093;8.620414 51.330822;8.620401 51.33074;8.6203575 51.330498;8.620298 51.33029;8.620224 51.330032;8.620029 51.329838;8.619605 51.329594;8.61906 51.329018;8.618711 51.328648;8.618145 51.328045;8.61808 51.32799;8.617632 51.327633;8.617371 51.32752;8.616818 51.327465;8.616741 51.327465;8.616135 51.32745;8.615142 51.32755;8.61499 51.327557;8.614696 51.327568;8.614196 51.327587;8.613544 51.327515;8.613027 51.327374;8.612278 51.32697;8.6120615 51.326668;8.61191 51.32658;8.611842 51.326538;8.61155 51.32645;8.610594 51.326294;8.610236 51.326237;8.609956 51.32618;8.609037 51.325985;8.608584 51.32589;8.608325 51.325737;8.608225 51.325676;8.607499 51.32504;8.607272 51.324837;8.607018 51.324707;8.606525 51.32446;8.606158 51.32432;8.60603 51.324276;8.6051445 51.32385;8.604554 51.323395;8.604324 51.323135;8.604271 51.323036;8.604166 51.322838;8.60352590770416 51.3216422421176;8.65333021408377 51.2638700879375;8.653452 51.263927;8.654485 51.26441;8.654926 51.264614;8.655762 51.26501;8.655864 51.26506;8.656258 51.26515;8.656358 51.26517;8.656641 51.26513;8.656901 51.26505;8.657736 51.264786;8.658066 51.264774;8.658447 51.264774;8.65855 51.2648;8.658678 51.26483;8.658912 51.26489;8.659106 51.264935;8.659276 51.264977;8.660269 51.2653;8.660372 51.26534;8.660635 51.265438;8.661267 51.26571;8.661422 51.265778;8.66156 51.26586;8.661712 51.265953;8.662391 51.266365;8.662787 51.266598;8.663072 51.26678;8.663285 51.266872;8.663387 51.26693;8.663476 51.266945;8.663766 51.26699;8.664009 51.26706;8.664663 51.267197;8.664887 51.26723;8.665074 51.267258;8.665327 51.267296;8.665558 51.267326;8.665653 51.267345;8.666307 51.26741;8.667967 51.267593;8.668127 51.267612;8.668397 51.267643;8.669737 51.26779;8.66997 51.2678;8.670081 51.267803;8.670339 51.26782;8.67091 51.267807;8.671018 51.2678;8.671583 51.267754;8.671779 51.267735;8.671953 51.267727;8.672615 51.267696;8.67288 51.267685;8.675171 51.267574;8.6756 51.26755;8.676098 51.26753;8.676608 51.2675;8.676767 51.26749;8.677421 51.267563;8.677539 51.267574;8.677823 51.267895;8.678551 51.267933;8.678642 51.267937;8.679193 51.267963;8.680394 51.268032;8.680575 51.268074;8.680713 51.268105;8.680897 51.268147;8.681047 51.268192;8.681166 51.268246;8.681247 51.26828;8.681362 51.268326;8.681526 51.268417;8.681615 51.26847;8.681858 51.268612;8.682408 51.26893;8.683032 51.269295;8.683437 51.269547;8.684273 51.270077;8.686329 51.271374;8.686364 51.271557;8.686361 51.27167;8.686301 51.2718;8.686258 51.27188;8.685214 51.27359;8.685305 51.273605;8.689611 51.274483;8.689931 51.27463;8.6901245 51.27472;8.690225 51.274773;8.69029 51.274837;8.690707 51.27525;8.69208 51.27661;8.69237 51.276688;8.692503 51.276634;8.692655 51.27657;8.692732 51.276505;8.692826 51.27643;8.692918 51.276352;8.692999 51.27629;8.693183 51.27614;8.693289 51.27605;8.693421 51.275948;8.694864 51.274784;8.695117 51.27456;8.695218 51.27449;8.695294 51.274452;8.695596 51.274296;8.695672 51.274258;8.695759 51.27424;8.696102 51.27416;8.699159 51.27415;8.699476 51.27415;8.699996 51.27416;8.700084 51.27416;8.700488 51.274162;8.700648 51.274166;8.701257 51.274174;8.701467 51.274174;8.70223885503171 51.2742691602094;8.713993 51.297415;8.68484836494186 51.3746250815106',
'8.970092 51.411734;8.94042935723719 51.4026455351955;8.940442 51.402576;8.94051 51.402245;8.9409 51.401398;8.941755 51.400047;8.941833 51.39992;8.941939 51.399746;8.942581 51.398685;8.94322 51.397015;8.943218 51.396786;8.943159 51.396614;8.942992 51.396484;8.942883 51.3964;8.940848 51.394844;8.940035 51.394222;8.939112 51.393517;8.938894 51.393227;8.938845 51.39297;8.938848 51.39286;8.938864 51.392147;8.939072 51.39173;8.939161 51.391552;8.939209 51.39141;8.939251 51.391285;8.939283 51.390972;8.9393 51.390816;8.9393425 51.390694;8.939484 51.390205;8.939564 51.389923;8.939578 51.38958;8.939482 51.38919;8.939423 51.38901;8.939382 51.388885;8.93909 51.388798;8.938073 51.388603;8.937898 51.388565;8.937785 51.388554;8.937394 51.388508;8.937197 51.38849;8.937008 51.388477;8.936755 51.388466;8.936593 51.388477;8.936029 51.38852;8.935864 51.388565;8.93554 51.38866;8.935192 51.38876;8.933566 51.38932;8.932054 51.38984;8.931759 51.389862;8.931563 51.389877;8.925717 51.390957;8.922172 51.391613;8.920393 51.39194;8.919792 51.39205;8.91793 51.392395;8.916782 51.392605;8.916262 51.392696;8.916184 51.39271;8.916062 51.39273;8.915227 51.39271;8.914779 51.392693;8.913022 51.392616;8.911851 51.392567;8.910908 51.392525;8.910612 51.392513;8.9104595 51.392506;8.910291 51.392494;8.9092245 51.392433;8.909124 51.39243;8.908511 51.392418;8.908348 51.392414;8.908201 51.392414;8.907577 51.392437;8.9075 51.39244;8.90717062439262 51.3924552488707;8.892695 51.38802;8.882008 51.316977;9.002222 51.282758;9.029462 51.329357;8.989987 51.405665;8.970092 51.411734',
'8.882008 51.316977;8.858517 51.286226;8.982175 51.191826;9.012414 51.231299;9.002222 51.282758;8.882008 51.316977',
'9.138035 51.336567;9.029462 51.329357;9.002222 51.282758;9.012414 51.231299;9.078267 51.223281;9.155625 51.237224;9.140784 51.334224;9.138035 51.336567',
'9.294709 51.395943;9.140784 51.334224;9.155625 51.237224;9.173282 51.218955;9.322245 51.264436;9.353863 51.368836;9.294709 51.395943',
'8.858517 51.286226;8.85121 51.281078;8.835617 51.189937;8.866861 51.144744;8.975033 51.166196;8.982175 51.191826;8.858517 51.286226',
'8.789522 51.297964;8.713993 51.297415;8.70223885503171 51.2742691602094;8.702489 51.2743;8.703089 51.274372;8.7043915 51.27453;8.704928 51.274593;8.705473 51.27466;8.706234 51.27475;8.706867 51.27479;8.708096 51.274776;8.708403 51.274765;8.708683 51.27477;8.708843 51.274773;8.710414 51.27479;8.710768 51.274796;8.713397 51.274826;8.713585 51.27483;8.71379 51.274834;8.713924 51.274834;8.714134 51.274845;8.714597 51.274876;8.715025 51.274902;8.715889 51.274952;8.716188 51.27497;8.71655 51.274998;8.716686 51.275005;8.716793 51.275017;8.716958 51.27502;8.71704 51.27501;8.71715 51.274998;8.718173 51.27487;8.718527 51.27484;8.718881 51.27481;8.72029 51.27479;8.720993 51.274773;8.721372 51.274784;8.72149 51.274464;8.721693 51.273922;8.721781 51.27368;8.721853 51.273552;8.721896 51.273483;8.722375 51.272778;8.72283 51.272095;8.723253 51.271492;8.723895 51.270527;8.723783 51.270447;8.723401 51.27024;8.72325 51.270157;8.722239 51.26961;8.721274 51.269096;8.721253 51.2687;8.721269 51.2684;8.721286 51.268322;8.721363 51.26815;8.721432 51.268078;8.721559 51.267933;8.721828 51.267815;8.7221575 51.267727;8.723245 51.26744;8.723562 51.267353;8.723676 51.267326;8.723758 51.267284;8.723852 51.267235;8.724012 51.267094;8.724154 51.266983;8.724385 51.266804;8.724459 51.26672;8.725027 51.266087;8.725653 51.265385;8.728893 51.264774;8.729136 51.26473;8.732937 51.26401;8.733287 51.263947;8.733468 51.263912;8.734245 51.263763;8.734324 51.26375;8.734546 51.263676;8.734914 51.263557;8.734991 51.26351;8.7358 51.262516;8.736556 51.261578;8.736714 51.26138;8.736793 51.261246;8.736838 51.26116;8.736823 51.26106;8.736771 51.260994;8.736664 51.260853;8.736517 51.260662;8.735727 51.25999;8.735637 51.259914;8.73532 51.259647;8.734848 51.259224;8.734313 51.25879;8.734058 51.25858;8.733939 51.258484;8.733863 51.2584;8.732129 51.257202;8.732085 51.25712;8.732064 51.257027;8.732048 51.25695;8.73184 51.255974;8.731799 51.255722;8.731709 51.255142;8.731572 51.254303;8.731512 51.253925;8.731458 51.25384;8.731392 51.253735;8.730654 51.253033;8.730506 51.25289;8.729982 51.252556;8.729688 51.252228;8.729571 51.252155;8.728743 51.251354;8.728626 51.251244;8.728551 51.25117;8.728164 51.25082;8.727267 51.25;8.728688 51.248672;8.729143 51.248196;8.729442 51.247883;8.729582 51.247448;8.729655 51.24722;8.729993 51.245995;8.730118 51.245544;8.730371 51.245266;8.730476 51.245144;8.731086 51.244446;8.731445 51.24403;8.731379 51.24372;8.731335 51.243523;8.731175 51.242683;8.7308445 51.240925;8.731004 51.240726;8.7309475 51.240356;8.730849 51.239693;8.730965 51.23954;8.731944 51.23825;8.732209 51.237835;8.732564 51.237324;8.7328615 51.236916;8.73296 51.236774;8.733077 51.236668;8.73315 51.236603;8.734411 51.235413;8.73476 51.235126;8.734983 51.234924;8.7355795 51.234417;8.737542 51.23275;8.737923 51.232426;8.738001 51.23236;8.738105 51.232094;8.738081 51.231937;8.73796 51.23125;8.737885 51.230835;8.737857 51.230667;8.737803 51.230347;8.737728 51.229908;8.737502 51.22859;8.737297 51.22813;8.737232 51.227985;8.737081 51.227654;8.737116 51.22741;8.737127 51.22733;8.737174 51.227253;8.738855 51.224586;8.739143 51.22408;8.739211 51.223946;8.739263 51.22384;8.739368 51.22363;8.7394705 51.22341;8.739499 51.22334;8.739617 51.22303;8.739653 51.22294;8.740229 51.22138;8.740275 51.221275;8.740308 51.22117;8.740398 51.220898;8.740439 51.220764;8.740464 51.220688;8.740693 51.219925;8.740769 51.219685;8.740849 51.219437;8.740947 51.21915;8.741085 51.218754;8.741197 51.218636;8.743187 51.21753;8.743691 51.217285;8.74395 51.21716;8.744415 51.21692;8.744785 51.216736;8.745863 51.2162;8.746588 51.21585;8.748317 51.21499;8.749653 51.21432;8.750255 51.21402;8.750736 51.21382;8.755611 51.212475;8.758878 51.21157;8.759011 51.21153;8.759329 51.21143;8.759735 51.211163;8.759998 51.210983;8.760478 51.210663;8.760918 51.210392;8.7612095 51.21021;8.7612915 51.21016;8.761357 51.210117;8.761636 51.210033;8.761909 51.209953;8.762059 51.20992;8.764934 51.2093;8.765768 51.20912;8.766025 51.2091;8.766344 51.20907;8.766656 51.20907;8.767699 51.209072;8.7680025 51.209072;8.768175 51.209087;8.767961 51.20855;8.767479 51.207756;8.766863 51.206734;8.766834 51.206615;8.76676 51.206314;8.766758 51.206158;8.766319 51.205765;8.765305 51.204365;8.765137 51.204136;8.764826 51.203705;8.76312 51.203217;8.7629 51.203236;8.762682 51.203262;8.760729 51.203484;8.760016 51.20328;8.758669 51.203026;8.75799 51.2029;8.757888 51.202858;8.757758 51.202805;8.757374 51.20261;8.756202 51.201992;8.754938 51.201324;8.752718 51.20015;8.752436 51.2;8.751998 51.199764;8.751894 51.1997;8.751314 51.199337;8.750627 51.198906;8.750347 51.19873;8.750064 51.198513;8.749974 51.19844;8.749931 51.19836;8.749894 51.1982;8.749948 51.198093;8.749954 51.198017;8.749974 51.19786;8.749842 51.19735;8.749758 51.1971;8.749728 51.197014;8.74964833974921 51.1967615382821;8.796013 51.183625;8.835617 51.189937;8.85121 51.281078;8.789522 51.297964',
'8.74964833974921 51.1967615382821;8.749533 51.196396;8.749408 51.196;8.749334 51.19574;8.749153 51.19509;8.748998 51.19465;8.749005 51.19453;8.749096 51.19279;8.749155 51.191654;8.749202 51.19141;8.749304 51.19087;8.749393 51.190426;8.749422 51.19035;8.749506 51.19014;8.749585 51.190056;8.749695 51.189938;8.749904 51.18981;8.7501335 51.18962;8.7505045 51.189316;8.750597 51.189266;8.75062 51.18916;8.750655 51.188995;8.750595 51.188526;8.750463 51.187496;8.750449 51.187164;8.75044 51.18697;8.750467 51.186775;8.750485 51.18665;8.750493 51.186455;8.750521 51.186302;8.750533 51.186226;8.750603 51.185955;8.750799 51.185066;8.750836 51.184883;8.750821 51.184673;8.750813 51.184517;8.750514 51.18397;8.750344 51.183327;8.750267 51.183044;8.750141 51.182503;8.750117 51.182404;8.750101 51.182327;8.750056 51.182117;8.750082 51.18193;8.750217 51.181717;8.750275 51.181625;8.750375 51.181465;8.750423 51.181408;8.7504835 51.181343;8.750603 51.181213;8.750878 51.180912;8.750943 51.180855;8.752101 51.179825;8.752329 51.179623;8.753002 51.17902;8.753094 51.178978;8.7533 51.178925;8.753749 51.178806;8.753881 51.178772;8.754086 51.178715;8.754899 51.1785;8.755046 51.178356;8.755165 51.178238;8.756702 51.177868;8.757727 51.17762;8.757877 51.177578;8.758006 51.17754;8.7581005 51.17742;8.758151 51.177357;8.758123 51.177242;8.75801 51.177128;8.757939 51.17709;8.757789 51.177006;8.757641 51.176956;8.757178 51.176796;8.753513 51.175537;8.752874 51.17532;8.752743 51.175274;8.752584 51.1752;8.752315 51.175076;8.751954 51.174892;8.751852 51.174843;8.751685 51.17472;8.7515955 51.174652;8.751292 51.17442;8.751044 51.17423;8.748397 51.172413;8.748065 51.172184;8.747801 51.172;8.7478075 51.171658;8.747782 51.171555;8.747721 51.17131;8.747642 51.171146;8.747567 51.17099;8.74749 51.170834;8.74739 51.170692;8.747379 51.1705;8.747396 51.17039;8.7474575 51.169975;8.747504 51.169685;8.748134 51.16893;8.748302 51.168736;8.746086 51.167805;8.745407 51.167496;8.745237 51.1674;8.745065 51.16734;8.744937 51.167244;8.744774 51.16712;8.744584 51.166935;8.744459 51.166817;8.743839 51.166477;8.743379 51.166237;8.7428 51.165936;8.742353 51.165817;8.7421875 51.165775;8.741339 51.1656;8.740649 51.165455;8.740184 51.1653;8.740079 51.165264;8.739873 51.165165;8.739413 51.164944;8.73923 51.164852;8.738946 51.16471;8.738759 51.16462;8.738351 51.164463;8.737931 51.164436;8.737123 51.164257;8.736776 51.16418;8.736975 51.163868;8.737003 51.16377;8.737057 51.163567;8.73705 51.16345;8.737054 51.163284;8.737026 51.163197;8.736667 51.162033;8.736594 51.1618;8.736133 51.16041;8.735808 51.160374;8.735555 51.16035;8.735294 51.160305;8.735152 51.160313;8.734847 51.16017;8.73432 51.159935;8.734126 51.159836;8.732044 51.15881;8.731766 51.15868;8.731673 51.158638;8.731576 51.158592;8.731423 51.158512;8.731084 51.158333;8.731002 51.15829;8.730423 51.15799;8.729963 51.157745;8.728762 51.157104;8.728363 51.157238;8.7282295 51.15717;8.728124 51.157116;8.727308 51.156704;8.727413 51.156387;8.726793 51.156075;8.7260475 51.1557;8.725972 51.155636;8.725584 51.15534;8.72525 51.15509;8.7251835 51.155056;8.725062 51.15499;8.723668 51.15425;8.723581 51.1542;8.723412 51.15411;8.723321 51.154068;8.722717 51.15378;8.722042 51.15346;8.721979 51.153408;8.721851 51.153248;8.72175 51.153145;8.721598 51.15299;8.721531 51.152946;8.721384 51.15286;8.721256 51.15279;8.719494 51.151867;8.71848 51.151337;8.718372 51.15128;8.718096 51.15121;8.717662 51.151188;8.717193 51.151226;8.717081 51.151237;8.716835 51.151257;8.716625 51.151276;8.716228 51.151314;8.715774 51.151367;8.7152 51.151436;8.715283 51.151688;8.713836 51.151848;8.713718 51.15186;8.713638 51.15184;8.713575 51.15178;8.713411 51.15168;8.713346 51.151638;8.713134 51.151333;8.712887 51.15098;8.71281 51.150867;8.712302 51.150143;8.711851 51.149498;8.711768 51.14939;8.711383 51.148895;8.711171 51.148758;8.710655 51.14842;8.70973 51.14785;8.707896 51.14673;8.707898 51.14662;8.707904 51.14648;8.708334 51.145786;8.708441 51.14561;8.708419 51.14545;8.708403 51.145348;8.708209 51.145237;8.707655 51.144924;8.706928 51.144516;8.706779 51.144436;8.706538 51.144295;8.706294 51.14416;8.70613 51.14407;8.705854 51.143917;8.705762 51.143867;8.705629 51.14381;8.70338 51.142845;8.702817 51.142605;8.702615 51.14253;8.702216 51.142082;8.70109 51.14088;8.70099 51.140766;8.700601 51.140316;8.70046 51.140156;8.700328 51.140003;8.699996 51.140022;8.699905 51.140026;8.69981 51.140034;8.699684 51.14004;8.699411 51.139866;8.699303 51.139797;8.699237 51.139744;8.699166 51.139694;8.698704 51.139362;8.697166 51.138256;8.695363 51.136963;8.695043 51.136734;8.694739 51.136436;8.694638 51.136337;8.694482 51.13606;8.694417 51.135925;8.694326 51.13574;8.694238 51.135468;8.694172 51.135185;8.69417 51.13511;8.694069 51.13339;8.6936655 51.13329;8.693514 51.133213;8.693282 51.13309;8.692533 51.13275;8.692425 51.132626;8.692376 51.13257;8.692234 51.132397;8.692154 51.13221;8.69223 51.131886;8.69233 51.131516;8.692405 51.13123;8.692446 51.13089;8.692475 51.130657;8.692461 51.130558;8.692444 51.130432;8.692414 51.130215;8.692353 51.130096;8.692062 51.129543;8.692069 51.12932;8.69208 51.129036;8.692164 51.128983;8.692315 51.128914;8.692395 51.1289;8.692536 51.12887;8.69287 51.12876;8.6934 51.128582;8.693506 51.128506;8.693753 51.128326;8.693834 51.12827;8.694478 51.127796;8.695622 51.126987;8.696145 51.12662;8.696429 51.1264;8.696752 51.126137;8.696865 51.126057;8.696943 51.12589;8.696939 51.12577;8.696864 51.125664;8.696793 51.125595;8.6967125 51.12551;8.69648 51.12527;8.696292 51.12507;8.696155 51.124912;8.695957 51.124687;8.695591 51.12427;8.695645 51.124134;8.695683 51.124035;8.696079 51.123592;8.696205 51.12345;8.696295 51.123432;8.696436 51.12343;8.696661 51.12343;8.696749 51.123425;8.696829 51.123425;8.697179 51.123615;8.697826 51.12346;8.698515 51.1235;8.699239 51.123543;8.699323 51.12354;8.69941 51.123535;8.699618 51.123486;8.699991 51.123398;8.700372 51.123306;8.7005415 51.12327;8.7007675 51.123215;8.700884 51.123165;8.700939 51.123074;8.7010145 51.12285;8.701102 51.12258;8.70138 51.12173;8.701499 51.121372;8.701556 51.1212;8.701586 51.121075;8.701634 51.120975;8.70169 51.120834;8.701776 51.120678;8.701859 51.120556;8.70195 51.12042;8.702294 51.1201;8.702617 51.11975;8.702681 51.119667;8.7027855 51.11953;8.70281 51.1193;8.702777 51.119102;8.702611 51.118946;8.702055 51.118443;8.701864 51.118237;8.701638 51.11799;8.701493 51.117565;8.701386 51.117275;8.701338 51.11715;8.701329 51.117;8.70132 51.11689;8.701375 51.116756;8.701433 51.116623;8.701488 51.116493;8.701794 51.11639;8.701862 51.11635;8.702232 51.116203;8.702348 51.116184;8.702485 51.116165;8.702572 51.11617;8.702694 51.116177;8.7028055 51.11618;8.703791 51.116325;8.704087 51.116367;8.704939 51.11639;8.705087 51.116375;8.706269 51.116264;8.706967 51.116215;8.707101 51.116203;8.707195 51.116196;8.707307 51.116203;8.707392 51.11621;8.707554 51.116245;8.707698 51.116276;8.707919 51.116364;8.708187 51.116444;8.709115 51.116806;8.709202 51.11684;8.709347 51.116886;8.709932 51.117073;8.710242 51.117172;8.71037 51.117214;8.710644 51.117275;8.710718 51.11729;8.710886 51.117306;8.711061 51.117325;8.711155 51.117332;8.711308 51.117348;8.712042 51.117367;8.712592 51.11736;8.712778 51.11726;8.713108 51.11679;8.713514 51.11621;8.713605 51.11608;8.713696 51.116013;8.713782 51.11599;8.713963 51.115944;8.714057 51.115936;8.714425 51.115887;8.714545 51.115883;8.715199 51.115856;8.716328 51.115784;8.716797 51.115753;8.717192 51.11573;8.717292 51.115723;8.71768 51.115685;8.717814 51.115673;8.717979 51.115658;8.718303 51.115627;8.718394 51.115604;8.718539 51.11557;8.718649 51.115547;8.718802 51.115444;8.718912 51.115368;8.719098 51.11523;8.719159 51.115185;8.719248 51.11512;8.719324 51.115063;8.719876 51.114384;8.720048 51.11417;8.7202635 51.114025;8.720241 51.113876;8.719995 51.113735;8.719683 51.113647;8.719668 51.113495;8.719579 51.113377;8.718642 51.11225;8.718561 51.11226;8.718268 51.112274;8.718269 51.112038;8.718287 51.111935;8.718319 51.111763;8.718475 51.111652;8.718739 51.11146;8.718918 51.111366;8.719093 51.11124;8.7194195 51.111004;8.719538 51.11092;8.719568 51.110794;8.719569 51.110657;8.719567 51.110413;8.719566 51.110268;8.719438 51.110138;8.719294 51.109997;8.719228 51.109932;8.719092 51.109856;8.71902 51.109833;8.71886 51.109795;8.718703 51.109756;8.71828 51.109627;8.7183075 51.10939;8.718325 51.109257;8.71724 51.109135;8.717122 51.109116;8.717 51.109123;8.716052 51.109173;8.715923 51.109177;8.71571 51.109154;8.71534 51.1092;8.715251 51.10917;8.714957 51.109074;8.714676 51.10896;8.71435 51.108917;8.713835 51.108948;8.713746 51.10906;8.71359 51.1092;8.713258 51.109062;8.713152 51.109013;8.712983 51.10893;8.712617 51.10873;8.7124405 51.108635;8.7123 51.10856;8.712223 51.108532;8.711808 51.108368;8.711452 51.108223;8.711165 51.108128;8.71094 51.10806;8.710623 51.10799;8.710417 51.10795;8.710225 51.10791;8.710108 51.10792;8.7098875 51.10795;8.70942 51.108112;8.709224 51.108173;8.709149 51.108196;8.708911 51.108147;8.708601 51.108116;8.708051 51.10763;8.707717 51.107574;8.707497 51.107548;8.707414 51.107533;8.7073145 51.107506;8.7072115 51.107513;8.706961 51.107517;8.706871 51.10752;8.706757 51.107525;8.70664 51.10753;8.706518 51.107536;8.706329 51.10756;8.706087 51.10759;8.705878 51.107574;8.705283 51.107597;8.7050905 51.107643;8.70484 51.107704;8.70455 51.107796;8.704445 51.10783;8.704147 51.10797;8.703965 51.10806;8.703756 51.10816;8.703635 51.108185;8.703364 51.108246;8.703159 51.108265;8.702854 51.10829;8.70271 51.10825;8.702534 51.108208;8.70242 51.10822;8.702274 51.108196;8.701933 51.108147;8.701804 51.108116;8.701625 51.108105;8.70142 51.108093;8.701194 51.108078;8.700977 51.108067;8.700588 51.10808;8.70027 51.108093;8.700121 51.108147;8.698837 51.108402;8.698716 51.108425;8.698431 51.108456;8.698204 51.108505;8.698096 51.10852;8.697821 51.108532;8.697477 51.10843;8.697332 51.10841;8.697237 51.108395;8.696951 51.108364;8.695975 51.108433;8.695524 51.108467;8.695212 51.10848;8.694858 51.108494;8.694307 51.108517;8.693753 51.10857;8.693113 51.108723;8.692621 51.10884;8.692215 51.108932;8.691006 51.109226;8.690878 51.10922;8.690731 51.109207;8.690331 51.10918;8.689999 51.10897;8.6898985 51.108906;8.689727 51.108795;8.689098 51.108395;8.688983 51.108337;8.688908 51.1083;8.688742 51.108234;8.68862391488566 51.1081833337226;8.740634 51.095482;8.796013 51.183625;8.74964833974921 51.1967615382821',
'8.60352590770416 51.3216422421176;8.603423 51.32145;8.603298 51.32098;8.6032505 51.3208;8.603252 51.32066;8.603254 51.32034;8.603463 51.31969;8.603611 51.318893;8.603613 51.318806;8.603613 51.318466;8.603613 51.318356;8.603625 51.31792;8.603655 51.317127;8.603684 51.316418;8.603698 51.31602;8.603525 51.31529;8.603479 51.315216;8.603215 51.31485;8.602783 51.314262;8.602543 51.314007;8.601765 51.313168;8.600022 51.311543;8.599958 51.311375;8.599869 51.311275;8.598523 51.31085;8.598253 51.310764;8.598031 51.31062;8.598057 51.30999;8.597963 51.309715;8.597796 51.309227;8.59752 51.308907;8.597373 51.308735;8.596546 51.308044;8.595821 51.30752;8.595568 51.30733;8.595391 51.307198;8.595117 51.306984;8.594685 51.306557;8.594535 51.30633;8.593308 51.30448;8.593211 51.304375;8.593108 51.304264;8.592807 51.303936;8.592705 51.303867;8.592349 51.303654;8.592202 51.303566;8.591925 51.303402;8.591575 51.30319;8.590521 51.302994;8.59039 51.30298;8.590114 51.30294;8.589869 51.30295;8.589712 51.30296;8.58961 51.30297;8.589239 51.302937;8.588835 51.302906;8.588721 51.30289;8.5883875 51.302807;8.588249 51.302765;8.58813 51.3027;8.587959 51.3026;8.5878935 51.30256;8.587526 51.30231;8.587294 51.302032;8.586582 51.300007;8.586386 51.29942;8.586136 51.29867;8.585851 51.298244;8.585446 51.297844;8.585218 51.297985;8.584972 51.29787;8.584851 51.297813;8.584422 51.297714;8.584282 51.29769;8.582689 51.29741;8.582602 51.297394;8.582695 51.297054;8.581208 51.296722;8.581088 51.296833;8.580435 51.29655;8.579923 51.296265;8.580307 51.296032;8.579946 51.295807;8.579705 51.29566;8.578556 51.294746;8.578464 51.294674;8.578123 51.294476;8.577088 51.293877;8.576766 51.2941;8.576345 51.293922;8.575848 51.29371;8.575143 51.29324;8.575607 51.293053;8.575162 51.29253;8.574635 51.291916;8.574158 51.291546;8.573866 51.29169;8.573735 51.291756;8.573587 51.29164;8.572889 51.291126;8.572619 51.290928;8.572351 51.290733;8.572262 51.290684;8.571807 51.290424;8.571576 51.290295;8.571866 51.290073;8.571947 51.290012;8.571715 51.289886;8.571639 51.28985;8.571564 51.289818;8.571448 51.28977;8.570979 51.289566;8.570275 51.28926;8.56912 51.288914;8.568862 51.28916;8.566536 51.28848;8.566625 51.288345;8.566758 51.28815;8.566168 51.287914;8.56602 51.287834;8.565753 51.28769;8.56558 51.287594;8.565091 51.28721;8.564964 51.287243;8.564638 51.287334;8.56436 51.286457;8.564119 51.286045;8.56446 51.28593;8.564595 51.285885;8.564453 51.28567;8.563576 51.284355;8.56343 51.28439;8.563047 51.284485;8.562988 51.284252;8.562827 51.28388;8.562688 51.28376;8.562098 51.283367;8.562202 51.28328;8.562277 51.28321;8.562391 51.283108;8.562199 51.282986;8.561861 51.28277;8.561742 51.282677;8.561283 51.282326;8.560983 51.28192;8.56085 51.281967;8.560647 51.282036;8.560537 51.282074;8.560291 51.28176;8.560166 51.281628;8.55954 51.28098;8.559431 51.280865;8.559702 51.280777;8.559905 51.28071;8.559377 51.279995;8.55898 51.27946;8.558765 51.27952;8.558464 51.2796;8.558244 51.27935;8.558196 51.279278;8.5578575 51.278774;8.557586 51.278553;8.557134 51.278202;8.556243 51.277565;8.556163 51.277397;8.55624 51.277187;8.556566 51.276974;8.557648 51.276558;8.558154 51.276344;8.558712 51.276096;8.5589695 51.275974;8.559416 51.275646;8.560413 51.27491;8.560552 51.274765;8.561054 51.274246;8.5616 51.273926;8.561977 51.273823;8.5624695 51.2738;8.563716 51.27295;8.566342 51.271164;8.56744 51.270477;8.567947 51.270206;8.56807 51.27014;8.5682125 51.270092;8.5683155 51.27005;8.568519 51.26998;8.568727 51.26991;8.569218 51.269756;8.569308 51.26973;8.569793 51.26958;8.570223 51.269535;8.571392 51.26941;8.571471 51.269398;8.571632 51.269375;8.571742 51.269356;8.571884 51.269333;8.572048 51.269306;8.572544 51.269115;8.572899 51.268982;8.5767355 51.26765;8.5772 51.26747;8.577425 51.267384;8.577664 51.267162;8.577897 51.266907;8.578797 51.265923;8.579136 51.265965;8.579424 51.265675;8.580507 51.26458;8.580208 51.264503;8.580348 51.2642;8.5804 51.264065;8.580443 51.263268;8.580703 51.262756;8.580796 51.262573;8.581148 51.262573;8.581244 51.262383;8.58135 51.262184;8.581585 51.26158;8.581706 51.261272;8.581833 51.260952;8.582144 51.260464;8.582293 51.260456;8.582519 51.260445;8.582643 51.260124;8.582676 51.26005;8.582754 51.259735;8.582832 51.25942;8.582867 51.259224;8.582923 51.25904;8.583004 51.258762;8.583304 51.258423;8.5834 51.25832;8.583539 51.25818;8.583784 51.257923;8.583891 51.25782;8.584356 51.25734;8.58498 51.256878;8.585163 51.256744;8.585144 51.256615;8.58513 51.256496;8.585035 51.256233;8.58498 51.25606;8.584933 51.25591;8.584871 51.25579;8.584825 51.2557;8.584812 51.255592;8.584787 51.25532;8.584692 51.254856;8.584678 51.25443;8.5847025 51.25432;8.584926 51.25406;8.584987 51.25399;8.585523 51.253376;8.586008 51.25284;8.586109 51.25275;8.586299 51.25251;8.586565 51.252213;8.586631 51.252136;8.586736 51.252056;8.586996 51.251846;8.58709 51.251762;8.587305 51.251564;8.587392 51.251484;8.587534 51.251354;8.587993 51.250935;8.588086 51.250824;8.588197 51.250683;8.588331 51.250515;8.588466 51.250355;8.588721 51.25003;8.58882 51.249935;8.588964 51.249794;8.589036 51.249725;8.589097 51.24968;8.589328 51.249527;8.589675 51.24927;8.589764 51.24923;8.590653 51.248745;8.590829 51.24865;8.591137 51.24846;8.591313 51.248352;8.591379 51.24831;8.591541 51.24821;8.5919075 51.247986;8.592088 51.24788;8.592543 51.24761;8.592621 51.247562;8.59312 51.24736;8.593309 51.247314;8.593445 51.247276;8.594063 51.247124;8.594186 51.2471;8.595944 51.246807;8.59684 51.246677;8.597108 51.246662;8.597319 51.246655;8.597447 51.246647;8.59774 51.246635;8.597823 51.24665;8.599865 51.24702;8.5999975 51.247063;8.600077 51.24709;8.600663 51.247284;8.6008 51.247307;8.6011 51.247356;8.601198 51.24737;8.601445 51.247417;8.601704 51.247467;8.602749 51.247536;8.602953 51.247524;8.603264 51.247505;8.60372 51.247425;8.605478 51.24712;8.605538 51.247295;8.605577 51.247402;8.607018 51.247097;8.607247 51.247047;8.607327 51.247025;8.607668 51.246918;8.607794 51.24688;8.608717 51.246593;8.609133 51.246464;8.609211 51.246483;8.609746 51.246475;8.609621 51.24659;8.609859 51.246628;8.610111 51.24667;8.610651 51.246685;8.610785 51.24669;8.61086 51.246693;8.6110325 51.2467;8.611107 51.24674;8.612748 51.24761;8.613087 51.247787;8.613718 51.24812;8.6140785 51.24831;8.615834 51.24925;8.615987 51.249332;8.617045 51.249905;8.61884 51.25082;8.618981 51.250893;8.61932 51.251057;8.619494 51.25114;8.619669 51.25123;8.619867 51.251324;8.620409 51.251587;8.62062 51.25169;8.621176 51.251842;8.621715 51.252026;8.621984 51.252106;8.622484 51.25226;8.622678 51.252316;8.62278 51.252346;8.623454 51.252483;8.6238 51.252556;8.623884 51.252583;8.624357 51.252735;8.624565 51.252804;8.62506 51.253006;8.625143 51.253044;8.625325 51.253136;8.625494 51.253227;8.625646 51.25338;8.625838 51.253574;8.626329 51.254158;8.626747 51.254654;8.626866 51.254807;8.6269245 51.254875;8.627134 51.255222;8.62732 51.25553;8.627856 51.256466;8.627974 51.25667;8.628104 51.25701;8.628204 51.25727;8.62829 51.25764;8.628313 51.257736;8.628296 51.257824;8.628263 51.25799;8.628082 51.258514;8.628056 51.258602;8.627978 51.25888;8.627948 51.258987;8.627942 51.259094;8.62787 51.259655;8.628155 51.25967;8.6283455 51.259678;8.62833 51.259777;8.628214 51.260494;8.628184 51.260677;8.62815 51.26089;8.628309 51.260925;8.628697 51.26101;8.630346 51.261314;8.632021 51.261623;8.632764 51.26176;8.634772 51.262135;8.635102 51.26219;8.6360445 51.262356;8.63758 51.262623;8.639923 51.263027;8.640333 51.2631;8.640535 51.263134;8.641197 51.26325;8.641458 51.263287;8.641567 51.263306;8.642568 51.26331;8.642985 51.263317;8.6447935 51.26333;8.6453285 51.263332;8.645571 51.263336;8.645765 51.263336;8.647012 51.263332;8.647521 51.26333;8.647847 51.263332;8.648382 51.26333;8.648742 51.263325;8.648914 51.263325;8.649994 51.263332;8.651759 51.263344;8.652031 51.263348;8.652213 51.263348;8.65333021408377 51.2638700879375;8.60352590770416 51.3216422421176',
'8.275421 50.882664;8.275007 50.882656;8.2737665 50.882633;8.273175 50.882587;8.2713585 50.882397;8.270721 50.882336;8.270662 50.88229;8.268562 50.880642;8.268197 50.880394;8.268081 50.88045;8.267792 50.880615;8.266916 50.88005;8.266412 50.87974;8.265736 50.87931;8.2648325 50.878532;8.263894 50.877693;8.263115 50.877045;8.261562 50.875694;8.261402 50.87551;8.261549 50.8748;8.261603 50.87405;8.261574 50.87386;8.261142 50.87327;8.260347 50.872192;8.259858 50.87178;8.259425 50.871387;8.259104 50.871227;8.258583 50.870937;8.258021 50.87066;8.257186 50.870216;8.256592 50.870014;8.255614 50.869625;8.254542 50.869225;8.254006 50.86901;8.253197 50.868637;8.2524805 50.868256;8.25194 50.867947;8.251667 50.867764;8.251328 50.867363;8.250935 50.86695;8.25067 50.866577;8.250282 50.866043;8.249941 50.86569;8.249653 50.86536;8.24861 50.864758;8.247777 50.864265;8.247301 50.863995;8.246823 50.863758;8.24638 50.86356;8.245823 50.86342;8.245191 50.863274;8.244313 50.863125;8.243619 50.863087;8.242953 50.86285;8.242572 50.862568;8.242082 50.86219;8.241666 50.861847;8.240978 50.861286;8.240507 50.86091;8.240323 50.86062;8.240186 50.86033;8.239873 50.8598;8.239507 50.859222;8.239314 50.85892;8.238682 50.858383;8.238337 50.85815;8.237934 50.85789;8.237531 50.85768;8.236667 50.857307;8.235978 50.85697;8.235479 50.856712;8.234046 50.856007;8.232839 50.855293;8.232184 50.85489;8.231607 50.853027;8.231082 50.851448;8.230882 50.850906;8.230572 50.850723;8.228517 50.849308;8.22624 50.847763;8.225575 50.84751;8.223804 50.84681;8.221088 50.845757;8.22066 50.84571;8.219347 50.844852;8.217662 50.84389;8.2163105 50.8431;8.215359 50.84255;8.2143 50.841885;8.21363 50.84136;8.212929 50.84069;8.212123 50.839874;8.211589 50.839268;8.210984 50.838554;8.210613 50.83806;8.210089 50.83763;8.209601 50.83723;8.209162 50.836983;8.208722 50.836746;8.208332 50.83662;8.206723 50.836468;8.205449 50.836372;8.204439 50.836258;8.203752 50.836113;8.203382 50.835976;8.202678 50.835735;8.202177 50.83557;8.200151 50.834732;8.198383 50.833958;8.198208 50.833916;8.197482 50.833817;8.196135 50.832947;8.195319 50.83231;8.193564 50.830532;8.192992 50.830307;8.191353 50.829906;8.188368 50.82907;8.187879 50.828716;8.186449 50.827568;8.184945 50.82642;8.182247 50.82434;8.180366 50.822456;8.180223 50.8223;8.18012 50.822105;8.180129 50.821926;8.18026 50.82125;8.180217 50.820244;8.180079 50.819977;8.17645 50.818844;8.176027 50.818657;8.174072 50.817635;8.1737 50.817444;8.173574 50.81739;8.173539 50.817284;8.17383 50.81705;8.174733 50.816334;8.174742 50.816154;8.173096 50.81336;8.172632 50.81248;8.171763 50.81071;8.170593 50.80852;8.1706 50.808365;8.170348 50.80816;8.169163 50.80706;8.168932 50.80676;8.168731 50.8063;8.168659 50.805847;8.16851 50.805744;8.167685 50.80544;8.167253 50.805084;8.165771 50.803555;8.164129 50.802868;8.160299 50.8013;8.156264 50.799706;8.154459 50.79897;8.153369 50.798218;8.151768 50.797554;8.150915 50.79731;8.150221 50.797287;8.1490345 50.797344;8.148736 50.797302;8.148144 50.79711;8.146358 50.79642;8.145967 50.796234;8.145604 50.796062;8.145278 50.795937;8.145044 50.795593;8.14311 50.794743;8.142637 50.79445;8.141819 50.79392;8.141387 50.79354;8.13902 50.79091;8.138595 50.790413;8.138047 50.790104;8.13764 50.789974;8.1365 50.789845;8.136071 50.7898;8.135843 50.78971;8.135323 50.789574;8.134959 50.789314;8.134488 50.78933;8.13318 50.789173;8.131572 50.789772;8.131179 50.789738;8.13053 50.78956;8.130344 50.789494;8.129181 50.78909;8.127447 50.788483;8.126166 50.78816;8.125832 50.788094;8.125533 50.788063;8.125406 50.78798;8.125584 50.787827;8.12581 50.787796;8.126334 50.78784;8.127187 50.787693;8.128545 50.78759;8.128773 50.787544;8.129233 50.7874;8.129695 50.78721;8.130224 50.787086;8.131133 50.786938;8.132435 50.786823;8.1333275 50.78671;8.133411 50.786545;8.133226 50.786434;8.131834 50.78644;8.130856 50.78649;8.130516 50.78651;8.129986 50.786655;8.129425 50.786964;8.129046 50.787033;8.128842 50.786976;8.128738 50.786808;8.128815 50.7867;8.128777 50.786427;8.128626 50.786377;8.128283 50.786465;8.128041 50.78641;8.12792 50.786255;8.127638 50.785854;8.127763 50.785606;8.127794 50.78537;8.1281 50.784878;8.128391 50.78451;8.128502 50.78437;8.129459 50.78363;8.129199 50.782505;8.130714 50.781193;8.130182 50.780563;8.130714 50.780075;8.129903 50.779427;8.131812 50.778465;8.132005 50.77835;8.132108 50.77816;8.1321535 50.77803;8.131927 50.77769;8.131532 50.776924;8.131632 50.776806;8.13269 50.776695;8.134041 50.77638;8.13488 50.77612;8.136208 50.775528;8.137909 50.77417;8.137878 50.774014;8.1386 50.772766;8.14076 50.772408;8.141281 50.772232;8.141638 50.771828;8.14161 50.771633;8.141936 50.7715;8.142002 50.77131;8.141736 50.771008;8.140561 50.77046;8.139722 50.77031;8.13884 50.77029;8.138528 50.77019;8.137053 50.76855;8.135992 50.7676;8.135357 50.76716;8.135515 50.76709;8.1381445 50.765896;8.138473 50.765713;8.138019 50.765427;8.13807774829107 50.7653808527917;8.251434 50.755769;8.322886 50.841369;8.31946204816835 50.8613874094803;8.319271 50.86136;8.318648 50.861393;8.31793 50.86145;8.317796 50.861477;8.317378 50.86152;8.316378 50.861607;8.314903 50.861744;8.313563 50.861816;8.312847 50.861835;8.312058 50.861824;8.311439 50.861786;8.310783 50.86169;8.309579 50.861313;8.308559 50.86097;8.306335 50.86106;8.305337 50.861076;8.3053 50.86148;8.305184 50.862514;8.305107 50.862953;8.305147 50.863716;8.305417 50.864365;8.304266 50.86482;8.301849 50.865776;8.301714 50.865868;8.301248 50.866623;8.301221 50.866776;8.30095 50.867336;8.300831 50.86767;8.300715 50.868164;8.300654 50.868237;8.300307 50.86841;8.299281 50.869007;8.298245 50.869785;8.296855 50.870747;8.296464 50.871075;8.296313 50.871227;8.296183 50.87135;8.295997 50.87151;8.295892 50.871597;8.295614 50.87189;8.295194 50.872417;8.29354 50.87457;8.292164 50.87659;8.29187 50.87743;8.291773 50.877903;8.29169 50.878437;8.291729 50.879227;8.291792 50.879883;8.291724 50.880108;8.291709 50.88044;8.292 50.881435;8.29198 50.881863;8.291783 50.88206;8.291287 50.882195;8.291022 50.882225;8.290032 50.88241;8.289217 50.88255;8.287862 50.882545;8.287695 50.882496;8.286385 50.88235;8.285851 50.882496;8.285529 50.882515;8.284806 50.882275;8.284582 50.88219;8.283788 50.881897;8.282464 50.881836;8.281171 50.88173;8.280045 50.881657;8.279428 50.88161;8.278849 50.88147;8.278567 50.88144;8.277949 50.881367;8.277739 50.88146;8.277028 50.881744;8.276912 50.881813;8.276481 50.882137;8.275801 50.882576;8.275421 50.882664',
'8.322886 50.841369;8.251434 50.755769;8.30631 50.654988;8.402286 50.715665;8.416253 50.764892;8.322886 50.841369',
'8.47551 50.791375;8.416253 50.764892;8.402286 50.715665;8.462125 50.641178;8.599707 50.692244;8.603771 50.714958;8.47551 50.791375',
'8.402286 50.715665;8.30631 50.654988;8.282309 50.580562;8.283268 50.549506;8.306852 50.510985;8.341853 50.500582;8.444246 50.542273;8.462125 50.641178;8.402286 50.715665',
'8.599707 50.692244;8.462125 50.641178;8.444246 50.542273;8.534894 50.517159;8.610634 50.651724;8.599707 50.692244',
'8.444246 50.542273;8.341853 50.500582;8.37594 50.438221;8.533358 50.387188;8.562675 50.463012;8.560012 50.48198;8.534894 50.517159;8.444246 50.542273',
'8.708797 50.538215;8.560012 50.48198;8.562675 50.463012;8.747391 50.380062;8.75755 50.386959;8.779318 50.420685;8.708797 50.538215',
'8.711891 50.737352;8.613529 50.72401;8.603771 50.714958;8.599707 50.692244;8.610634 50.651724;8.708018 50.573421;8.81525 50.658238;8.806276 50.727467;8.711891 50.737352',
'8.913384 50.773667;8.816336 50.742875;8.806276 50.727467;8.81525 50.658238;8.838494 50.637009;8.965939 50.646488;8.987136 50.682601;8.985631 50.718519;8.913384 50.773667',
'9.118197 50.800268;8.985631 50.718519;8.987136 50.682601;9.118549 50.62533;9.162321 50.681388;9.118197 50.800268',
'8.81525 50.658238;8.708018 50.573421;8.708797 50.538215;8.779318 50.420685;8.85197 50.446823;8.885345 50.494808;8.838494 50.637009;8.81525 50.658238',
'8.610634 50.651724;8.534894 50.517159;8.560012 50.48198;8.708797 50.538215;8.708018 50.573421;8.610634 50.651724',
'8.965939 50.646488;8.838494 50.637009;8.885345 50.494808;8.994092 50.528557;8.965939 50.646488',
'9.162321 50.681388;9.118549 50.62533;9.096597 50.529019;9.184688 50.493724;9.228216 50.52637;9.236334 50.667493;9.162321 50.681388',
'8.987136 50.682601;8.965939 50.646488;8.994092 50.528557;9.060648 50.510215;9.096597 50.529019;9.118549 50.62533;8.987136 50.682601',
'9.283061 50.67525;9.236334 50.667493;9.228216 50.52637;9.38288 50.545981;9.385265 50.550325;9.381652 50.626993;9.283061 50.67525',
'8.994092 50.528557;8.885345 50.494808;8.85197 50.446823;8.995719 50.313393;9.048325 50.35232;9.060648 50.510215;8.994092 50.528557',
'9.38288 50.545981;9.228216 50.52637;9.184688 50.493724;9.218551 50.420208;9.352729 50.399371;9.352874 50.399464;9.374062 50.459826;9.38288 50.545981',
'8.041447 50.557037;8.041635 50.556606;8.04231 50.55505;8.041988 50.55493;8.042969 50.553665;8.043073 50.55353;8.040579 50.552273;8.039876 50.552067;8.039248 50.551933;8.038197 50.551712;8.036878 50.551514;8.035512 50.551437;8.034987 50.55145;8.03396 50.551865;8.033846 50.551823;8.033643 50.55156;8.033395 50.5514;8.033247 50.55134;8.032963 50.551224;8.032486 50.551105;8.031715 50.550983;8.029394 50.550743;8.028145 50.550533;8.028583 50.549953;8.028881 50.549767;8.029268 50.549637;8.029497 50.54951;8.029231 50.548927;8.029147 50.548115;8.028717 50.547882;8.028291 50.547543;8.028063 50.547165;8.027977 50.54673;8.027985 50.54641;8.028074 50.546135;8.028355 50.545704;8.028519 50.54527;8.028497 50.545048;8.028271 50.54463;8.027981 50.544292;8.027549 50.543957;8.027374 50.54378;8.026535 50.54332;8.026397 50.543243;8.0256195 50.542786;8.025478 50.5427;8.025024 50.542435;8.024589 50.542175;8.025002 50.54189;8.024907 50.541782;8.024752 50.54161;8.024678 50.54144;8.02462 50.541306;8.024371 50.54103;8.024009 50.54065;8.023463 50.540707;8.020958 50.53846;8.020572 50.538185;8.020397 50.53806;8.019963 50.537754;8.018791 50.53681;8.018496 50.536663;8.0174 50.53692;8.015797 50.53558;8.015567 50.535435;8.01551218093653 50.5354008059307;8.060405 50.475664;8.083468 50.472847;8.11479819683028 50.5358276508617;8.114465 50.535854;8.113715 50.535877;8.113532 50.535805;8.113786 50.535442;8.113536 50.535397;8.112854 50.535336;8.109947 50.5348;8.108174 50.53439;8.107795 50.534283;8.107424 50.53418;8.106993 50.534092;8.106358 50.534103;8.106082 50.534046;8.1059475 50.533943;8.105559 50.534145;8.105352 50.534172;8.105279 50.534153;8.105172 50.534126;8.105036 50.533997;8.10497 50.53381;8.104656 50.533283;8.104361 50.533092;8.103613 50.532787;8.102999 50.53258;8.102597 50.533234;8.10226 50.533737;8.102027 50.534286;8.10198 50.534508;8.101842 50.53456;8.101479 50.534576;8.101158 50.534706;8.099999 50.53472;8.099678 50.53473;8.099223 50.534668;8.098611 50.53452;8.098519 50.53456;8.098471 50.534866;8.098378 50.535027;8.098218 50.535114;8.097944 50.535156;8.096761 50.535122;8.096077 50.535133;8.094754 50.535343;8.094227 50.535576;8.092787 50.536396;8.092559 50.536438;8.092468 50.536423;8.09181 50.536144;8.091605 50.53603;8.091473 50.53559;8.091384 50.535446;8.091294 50.53539;8.090703 50.535416;8.090587 50.535515;8.090471 50.53569;8.090309 50.536106;8.090215 50.536224;8.089941 50.536396;8.08923 50.536743;8.0876 50.538097;8.087462 50.53833;8.087323 50.53849;8.087119 50.538517;8.084434 50.538513;8.082747 50.538513;8.080516 50.53846;8.079292 50.538433;8.078932 50.53863;8.078703 50.53874;8.078487 50.53883;8.077141 50.539127;8.076616 50.5392;8.07582 50.53918;8.074317 50.53907;8.074089 50.53904;8.073562 50.53897;8.072749 50.53886;8.072046 50.538742;8.070844 50.538258;8.070278 50.537907;8.070182 50.538387;8.070104 50.539417;8.069753 50.540314;8.069727 50.54069;8.06974 50.540905;8.069766 50.54126;8.06969 50.541924;8.069385 50.542866;8.069268 50.543274;8.069334 50.545826;8.068993 50.545887;8.06778 50.54612;8.0676 50.546223;8.066928 50.54731;8.066878 50.547554;8.066917 50.54812;8.066868 50.548367;8.066593 50.548714;8.066387 50.548874;8.066136 50.548916;8.065587 50.549118;8.065518 50.549187;8.065358 50.549244;8.0648575 50.549286;8.064747 50.548965;8.06445 50.548965;8.063766 50.549168;8.063421 50.54931;8.062965 50.54935;8.0627165 50.549335;8.062257 50.54974;8.061712 50.549885;8.061097 50.549942;8.060435 50.549923;8.059569 50.54996;8.058929 50.55013;8.058474 50.550247;8.057903 50.550358;8.057281 50.551243;8.05621 50.55105;8.056027 50.551163;8.055822 50.55121;8.055413 50.55122;8.055223 50.551914;8.054156 50.55162;8.053713 50.55262;8.052166 50.55257;8.050733 50.552593;8.049889 50.55266;8.049273 50.552773;8.048793 50.552948;8.048316 50.553158;8.047786 50.55339;8.047671 50.55355;8.0476 50.553856;8.047663 50.55432;8.047554 50.55462;8.047292 50.555016;8.047013 50.555653;8.046393 50.556145;8.046259 50.556213;8.046231 50.556873;8.046138 50.556946;8.043587 50.557034;8.041447 50.557037-8.120474 50.548717;8.1200285 50.548702;8.118895 50.548485;8.118758 50.548397;8.118736 50.54826;8.118882 50.54706;8.118866 50.54671;8.118709 50.546577;8.116758 50.54538;8.116354 50.54525;8.116035 50.545177;8.115057 50.54507;8.11335 50.54499;8.113239 50.544918;8.112745 50.544147;8.112614 50.544006;8.112472 50.543865;8.112226 50.54374;8.111385 50.543488;8.111114 50.543385;8.110932 50.54321;8.110843 50.543007;8.110778 50.54273;8.110851 50.542267;8.11083 50.54206;8.110649 50.541916;8.110107 50.54158;8.109927 50.541348;8.110076 50.54088;8.110365 50.540405;8.110578 50.54006;8.110783 50.53977;8.111037 50.539597;8.111502 50.53936;8.111723 50.53928;8.112292 50.539165;8.113458 50.538853;8.115852 50.53847;8.11611103438772 50.5384667457991;8.12120270224233 50.5487021285257;8.120474 50.548717',
'8.01551218093653 50.5354008059307;8.015163 50.535183;8.014576 50.534718;8.013815 50.533348;8.014827 50.532307;8.014657 50.532272;8.014239 50.53219;8.013508 50.532112;8.012987 50.531895;8.012536 50.531586;8.011225 50.530563;8.010999 50.53042;8.010907 50.53042;8.00995 50.530586;8.009906 50.53053;8.009061 50.52937;8.008333 50.52954;8.007776 50.52968;8.004874 50.53039;8.003969 50.529793;8.003361 50.52925;8.002979 50.528614;8.002803 50.528076;8.000138 50.52744;7.999999 50.52741;7.9990783 50.527187;7.9973702 50.52552;7.997144 50.525326;7.9964776 50.524746;7.9959664 50.524303;7.9953785 50.52374;7.9951296 50.523438;7.994836 50.523205;7.994039 50.52277;7.993835 50.522655;7.992772 50.522076;7.9945087 50.52067;7.9950047 50.520267;7.9957814 50.519485;7.995897 50.519226;7.992401 50.51832;7.991756 50.516815;7.991185 50.515583;7.9910083 50.514595;7.9908276 50.514507;7.9907136 50.514393;7.9906235 50.51419;7.9902177 50.513554;7.9900274 50.51338;7.9898143 50.513176;7.9894476 50.512947;7.9885435 50.51248;7.98745 50.512165;7.986018 50.511784;7.985361 50.511612;7.9851394 50.51163;7.9846344 50.51171;7.9838166 50.511784;7.9831586 50.511494;7.9830227 50.51138;7.9832554 50.5108;7.9834366 50.510452;7.9836445 50.51024;7.9843025 50.509804;7.9845343 50.509586;7.9846454 50.509197;7.984651 50.50875;7.984494 50.508186;7.984515 50.50794;7.9856 50.504543;7.9856734 50.504185;7.9856734 50.503925;7.985813 50.503464;7.986914 50.501366;7.987348 50.500774;7.987599 50.500526;7.988048 50.5;7.988125 50.49991;7.988422 50.499634;7.988834 50.49933;7.9897676 50.498783;7.990009 50.498543;7.990154 50.498276;7.9897866 50.498135;7.9894967 50.49801;7.9892106 50.497868;7.987383 50.496887;7.98707 50.49692;7.986122 50.49663;7.985216 50.496426;7.985133 50.49623;7.985082 50.49611;7.9841323 50.495876;7.9836645 50.49572;7.983093 50.49553;7.981916 50.495354;7.980559 50.495296;7.9789762 50.495064;7.9793854 50.49483;7.980018 50.49454;7.980879 50.494255;7.981151 50.494053;7.981151 50.493793;7.981086 50.49366;7.981018 50.49353;7.980339 50.492172;7.980295 50.491825;7.980295 50.49162;7.980704 50.491478;7.980886 50.49087;7.980933 50.49032;7.980029 50.489655;7.9790363 50.48847;7.9785852 50.48783;7.979495 50.48589;7.979401 50.485542;7.979899 50.485226;7.979268 50.484444;7.981987 50.482567;7.983391 50.482624;7.9834814 50.482365;7.9857435 50.482338;7.9861064 50.481617;7.9862003 50.48043;7.9861574 50.479706;7.987513 50.479794;7.987574 50.47957;7.987606 50.479446;7.987742 50.479218;7.987742 50.4791;7.987474 50.478783;7.98738 50.478607;7.98743 50.478203;7.987382 50.47803;7.9870243 50.477943;7.986659 50.477596;7.986523 50.477276;7.9861655 50.477135;7.985804 50.47658;7.9861674 50.47499;7.986352 50.474876;7.9868913 50.47499;7.988004 50.475292;7.988294 50.47537;7.9887137 50.475212;7.9888387 50.475166;7.987797 50.474472;7.98744 50.47413;7.98744 50.47349;7.987668 50.472797;7.987987 50.47228;7.989027 50.472076;7.9900246 50.47176;7.9917903 50.471703;7.9925585 50.47159;7.993555 50.471214;7.994823 50.47026;7.995142 50.46974;7.995189 50.46919;7.994782 50.468525;7.994376 50.468235;7.995385 50.467644;7.9984536 50.465836;7.9988613 50.46555;7.9989815 50.464516;7.9992795 50.463924;7.999873 50.46311;7.999998 50.46302;8.000579 50.462593;8.001261 50.462334;8.001266 50.462162;8.002511 50.46199;8.003785 50.461845;8.004806 50.461662;8.006031 50.461346;8.006609 50.461174;8.007964 50.46077;8.008894 50.460613;8.009984 50.46057;8.010529 50.460487;8.010573 50.46041;8.010621 50.460327;8.010202 50.459713;8.009968 50.45937;8.009633 50.458443;8.009546 50.457977;8.00958399276221 50.457924759952;8.060405 50.475664;8.01551218093653 50.5354008059307',
'8.060405 50.475664;8.00958399276221 50.457924759952;8.009818 50.457603;8.010558 50.453964;8.010797 50.45278;8.010797 50.45262;8.010253 50.45229;8.009143 50.451897;8.007899 50.451283;8.00756 50.45095;8.007516 50.450645;8.007722 50.45027;8.007679 50.44978;8.007707 50.44924;8.007924 50.448795;8.008003 50.448635;8.00465 50.448322;8.002814 50.448;8.000228 50.447662;8.000032 50.44626;8.000922 50.445263;8.000356 50.44522;7.999995 50.445206;7.9989038 50.44516;7.996728 50.444878;7.995014 50.44466;7.995017 50.444374;7.990676 50.443905;7.990448 50.443966;7.989231 50.44292;7.989593 50.4424;7.989543 50.442123;7.989176 50.44176;7.988975 50.44133;7.988909 50.440807;7.989292 50.439518;7.9891753 50.43952;7.988615 50.439537;7.9880323 50.439487;7.9875994 50.43945;7.9855165 50.439114;7.9855103 50.43903;7.9854946 50.438812;7.9836617 50.43855;7.981851 50.438374;7.980316 50.438263;7.9792266 50.438187;7.9791327 50.438313;7.9790683 50.4384;7.977235 50.43801;7.976217 50.437733;7.975561 50.437447;7.975448 50.437214;7.975336 50.435913;7.975406 50.43564;7.975882 50.43539;7.976946 50.434944;7.9782367 50.434265;7.9783587 50.434364;7.9794335 50.435265;7.979976 50.435596;7.981357 50.43596;7.982443 50.436104;7.983688 50.436047;7.9855666 50.435772;7.985583 50.435673;7.9856124 50.435486;7.988193 50.435383;7.988252 50.435287;7.989159 50.43383;7.9876533 50.433704;7.9870186 50.433502;7.9867306 50.433506;7.9856157 50.43353;7.9850936 50.43348;7.9844637 50.432938;7.984101 50.432487;7.9840336 50.432243;7.984191 50.4318;7.9846015 50.431664;7.9848056 50.431404;7.9855976 50.4311;7.9864345 50.43059;7.9868193 50.430305;7.9873414 50.429783;7.987636 50.429276;7.987841 50.428585;7.987863 50.42838;7.9878883 50.428135;7.9877753 50.427673;7.9873905 50.427326;7.9871645 50.42718;7.9868474 50.426804;7.9863286 50.426296;7.9859047 50.426376;7.9857855 50.4264;7.9857354 50.42638;7.9852195 50.42621;7.984314 50.42599;7.9840207 50.425846;7.9837728 50.425613;7.983684 50.425198;7.983684 50.424225;7.983703 50.42408;7.983739 50.423798;7.9837527 50.42369;7.9843426 50.42307;7.983966 50.422977;7.983375 50.422836;7.983007 50.42265;7.982908 50.422573;7.9828568 50.422504;7.982782 50.422474;7.982229 50.42178;7.9818144 50.421112;7.9817443 50.420506;7.9817243 50.418854;7.981653 50.418232;7.9801793 50.417416;7.977833 50.41612;7.977788 50.415768;7.9756613 50.414436;7.9745755 50.413857;7.9729466 50.413494;7.971861 50.413567;7.971047 50.41348;7.970277 50.41316;7.969758 50.412914;7.968942 50.4129;7.9677424 50.412926;7.9664063 50.413013;7.9660897 50.4132;7.9651074 50.413445;7.964985 50.413475;7.964689 50.413105;7.9645658 50.412956;7.964471 50.412838;7.9638057 50.412014;7.964215 50.411594;7.9647617 50.40948;7.965872 50.409363;7.9677253 50.409164;7.9677415 50.408905;7.9677753 50.4084;7.969655 50.408356;7.969993 50.407402;7.970335 50.40696;7.970675 50.406654;7.970968 50.406548;7.9711056 50.40649;7.9720335 50.406437;7.9739113 50.40651;7.976556 50.40667;7.9776697 50.406715;7.978757 50.406612;7.9792986 50.407093;7.981377 50.408092;7.982283 50.408558;7.9825773 50.408543;7.983191 50.407124;7.983645 50.406345;7.984575 50.40517;7.9851627 50.405376;7.9854345 50.40536;7.9863176 50.40487;7.9877224 50.403236;7.9886303 50.402077;7.9884944 50.401806;7.988994 50.40117;7.989696 50.40091;7.9885383 50.399998;7.98852 50.39975;7.988046 50.399605;7.9874797 50.399548;7.9870725 50.399605;7.9860325 50.39934;7.9854217 50.39898;7.984446 50.398735;7.983343 50.39837;7.983909 50.398197;7.985497 50.397785;7.9858356 50.397728;7.9861755 50.397717;7.98685 50.397907;7.9876375 50.398083;7.9892154 50.398396;7.98945 50.398796;7.9896083 50.39949;7.990333 50.39958;7.9916596 50.399387;7.99576 50.398758;7.996554 50.398586;7.997255 50.398518;7.9991846 50.39854;8.001535 50.398533;8.002189 50.39855;8.002504 50.39861;8.002631 50.398983;8.00572 50.399075;8.005923 50.399452;8.004331 50.39965;8.004398 50.4001;8.004646 50.40036;8.005018 50.400444;8.005507 50.400436;8.007872 50.399616;8.008218 50.39993;8.0099125 50.399433;8.010859 50.3992;8.011781 50.39905;8.012519 50.399223;8.013325 50.399754;8.013701 50.40099;8.014879 50.400745;8.017015 50.400677;8.01824 50.400665;8.018739 50.400707;8.019035 50.400784;8.019239 50.400913;8.020645 50.40084;8.023847 50.40082;8.023553 50.40062;8.023146 50.400185;8.022988 50.399895;8.022678 50.398632;8.022434 50.39848;8.02133 50.398273;8.02115 50.398228;8.02106 50.398155;8.021083 50.398;8.021242 50.397854;8.021325 50.39762;8.020781 50.39628;8.020736 50.396034;8.021294 50.394245;8.021318 50.393738;8.020886 50.391243;8.021033 50.389828;8.020789 50.389164;8.020304 50.387604;8.020241 50.38714;8.020313 50.386604;8.020293 50.38621;8.019589 50.386154;8.019183 50.386066;8.017808 50.38557;8.017133 50.38525;8.016502 50.384903;8.0162325 50.384815;8.015307 50.384697;8.013973 50.38471;8.013822 50.38464;8.013863 50.38446;8.014543 50.38423;8.016037 50.383804;8.016467 50.383606;8.017036 50.383144;8.017468 50.3829;8.017762 50.3828;8.02233 50.38228;8.023144 50.38225;8.024387 50.382298;8.027436 50.382366;8.029963 50.382805;8.030744 50.381435;8.030856 50.381363;8.03106 50.381336;8.031308 50.38135;8.032053 50.38147;8.03368 50.381603;8.034853 50.381763;8.037006 50.382187;8.03733 50.382225;8.037512 50.382267;8.037435 50.382507;8.037413 50.382744;8.037429 50.383015;8.037516 50.38333;8.037607 50.383533;8.037639 50.383713;8.037558 50.384056;8.037524 50.38426;8.037822 50.384567;8.040005 50.38458;8.039362 50.385876;8.04279 50.385857;8.045445 50.379627;8.045699 50.37921;8.046036 50.379025;8.047056 50.37864;8.047595 50.37859;8.047964 50.3786;8.048523 50.378395;8.048711 50.378326;8.04788 50.3774;8.047632 50.377224;8.047366 50.377144;8.047118 50.37702;8.046753 50.376804;8.045045 50.37563;8.045182 50.375427;8.045763 50.375027;8.04652 50.375126;8.046952 50.37515;8.047402 50.375195;8.047842 50.37531;8.048322 50.375538;8.048683 50.37586;8.049483 50.37704;8.0497055 50.377457;8.05 50.377865;8.050689 50.3794;8.053814 50.37873;8.053566 50.378326;8.053341 50.378094;8.052173 50.377327;8.051413 50.37686;8.051115 50.376644;8.050513 50.376064;8.05668 50.373505;8.057268 50.373287;8.057607 50.37323;8.058083 50.37322;8.0585985 50.37326;8.058667 50.373737;8.058797 50.374245;8.058997 50.374763;8.0591755 50.375053;8.059531 50.375523;8.062459 50.37087;8.063732 50.368904;8.064473 50.367764;8.064678 50.367638;8.065402 50.36741;8.065878 50.36722;8.066209 50.366997;8.066696 50.36659;8.067237 50.366776;8.068082 50.365685;8.067454 50.36525;8.066532 50.364494;8.066443 50.36438;8.066445 50.364178;8.067353 50.36064;8.066429 50.36048;8.066596 50.358997;8.064815 50.358845;8.064273 50.35874;8.064885 50.358356;8.065045 50.35811;8.0651865 50.35745;8.069948 50.358173;8.0704365 50.355717;8.070116 50.355522;8.071496 50.353653;8.073032 50.354076;8.073763 50.35256;8.074011 50.3523;8.074263 50.351982;8.074628 50.35135;8.0751505 50.34988;8.075565 50.34987;8.0764065 50.348248;8.076558 50.34801;8.0767355 50.34785;8.075787 50.34773;8.075557 50.34519;8.0759 50.34506;8.0759 50.344727;8.076782 50.344284;8.075619 50.343346;8.076885 50.342754;8.076416 50.34226;8.07696 50.34206;8.076222 50.34147;8.077269 50.340622;8.07745 50.340405;8.077474 50.34019;8.077369 50.33899;8.07631 50.33883;8.076751 50.337143;8.076233 50.33705;8.076852 50.335827;8.076222 50.33565;8.074804 50.335175;8.07399 50.33481;8.073949 50.334232;8.072459 50.334156;8.072443 50.333317;8.071675 50.333286;8.071724 50.332977;8.071657 50.33286;8.071241 50.332577;8.072125 50.332447;8.0722475 50.332474;8.072091 50.332348;8.071978 50.332153;8.071887 50.332073;8.071621 50.331844;8.071482 50.331783;8.07143 50.33176;8.071327 50.33179;8.071101 50.33172;8.070989 50.33163;8.071034 50.33149;8.071263 50.331387;8.071535 50.331352;8.073795 50.331192;8.073712 50.330326;8.0737511803755 50.3300084757069;8.119947 50.358504;8.128357 50.391098;8.083468 50.472847;8.060405 50.475664',
'8.13451704521677 50.5560117330925;8.134496 50.55587;8.134482 50.55576;8.134621 50.55553;8.136011 50.554058;8.136369 50.55368;8.135441 50.55318;8.136125 50.55281;8.137306 50.552177;8.137524 50.55206;8.137094 50.55197;8.136897 50.551895;8.13674 50.551834;8.136593 50.55178;8.135664 50.5514;8.134444 50.550827;8.133895 50.55065;8.132578 50.55041;8.131937 50.550343;8.131736 50.55032;8.128189 50.549854;8.126099 50.549557;8.125756 50.549454;8.125372 50.549263;8.124192 50.54881;8.123674 50.54863;8.123404 50.548603;8.122791 50.54864;8.122287 50.54868;8.12120270224233 50.5487021285257;8.11611103438772 50.5384667457991;8.116648 50.53846;8.11708 50.53849;8.117489 50.53861;8.117784 50.538727;8.118373 50.539047;8.118826 50.539326;8.119186 50.539616;8.121259 50.539555;8.12117 50.539337;8.119374 50.5367;8.118601 50.53547;8.118387 50.535202;8.117565 50.53568;8.117144 50.535892;8.116306 50.536324;8.116172 50.535934;8.115856 50.535744;8.11479819683028 50.5358276508617;8.083468 50.472847;8.128357 50.391098;8.279473 50.476123;8.306852 50.510985;8.283268 50.549506;8.13451704521677 50.5560117330925',
'8.13807774829107 50.7653808527917;8.139054 50.764614;8.139615 50.764305;8.140594 50.76391;8.14075 50.763767;8.1403475 50.76357;8.139868 50.763344;8.139713 50.763092;8.139633 50.76283;8.139688 50.76252;8.139763 50.76245;8.13995 50.762466;8.140191 50.76259;8.140781 50.76316;8.14106 50.763573;8.141122 50.763836;8.141331 50.76379;8.142171 50.763523;8.142864 50.76318;8.143166 50.762806;8.143141 50.76253;8.143114 50.76233;8.144344 50.762497;8.144197 50.76316;8.144169 50.763374;8.144551 50.763596;8.144938 50.76376;8.145831 50.763897;8.146696 50.763924;8.146882 50.76282;8.147026 50.762573;8.147332 50.762486;8.148193 50.762527;8.148386 50.762424;8.148823 50.762302;8.150093 50.76246;8.150603 50.762383;8.151047 50.76216;8.151476 50.76185;8.152393 50.761845;8.152999 50.761345;8.152769 50.761055;8.1525 50.760845;8.152374 50.760754;8.15197 50.760593;8.148552 50.758724;8.148679 50.758453;8.1490135 50.758137;8.148819 50.757908;8.147768 50.757137;8.147546 50.756702;8.147472 50.756298;8.147332 50.756115;8.146964 50.755558;8.146835 50.75514;8.146839 50.7547;8.147168 50.754517;8.147521 50.75468;8.149095 50.755413;8.149502 50.755527;8.15049 50.75568;8.150999 50.75563;8.151285 50.755516;8.15253 50.754696;8.152782 50.754486;8.152946 50.753845;8.152941 50.752525;8.154266 50.75235;8.154028 50.75213;8.153932 50.75182;8.153791 50.751698;8.153201 50.75183;8.152913 50.75124;8.152918 50.751118;8.153131 50.750996;8.153565 50.750946;8.153626 50.75087;8.153604 50.750584;8.153662 50.75011;8.154208 50.74894;8.154706 50.74838;8.157539 50.74881;8.160811 50.746876;8.163509 50.745117;8.163641 50.74508;8.163725 50.745;8.163191 50.74481;8.159691 50.743465;8.159606 50.743248;8.160707 50.741566;8.16097 50.741547;8.161718 50.741993;8.163317 50.743;8.164388 50.742393;8.164865 50.742126;8.164545 50.74174;8.164499 50.741535;8.164667 50.741196;8.164368 50.740784;8.164443 50.740414;8.164777 50.739742;8.165287 50.73878;8.166697 50.736126;8.166746 50.73603;8.1668215 50.735653;8.166254 50.73271;8.166101 50.73242;8.165756 50.73215;8.164031 50.731403;8.1635 50.73113;8.163402 50.730865;8.163173 50.72984;8.163156 50.729767;8.16276 50.729053;8.16214 50.728313;8.159348 50.726334;8.159079 50.726143;8.159137 50.726025;8.159255 50.725918;8.160447 50.7253;8.159312 50.724373;8.158456 50.723507;8.156612 50.721375;8.155837 50.72;8.155695 50.719913;8.155579 50.719902;8.155191 50.719692;8.154784 50.718517;8.154041 50.71762;8.151896 50.71506;8.151706 50.71481;8.15162 50.714657;8.151628 50.714523;8.151693 50.714314;8.150766 50.713364;8.15075 50.7122;8.150742 50.71159;8.150519 50.705605;8.149019 50.70374;8.147411 50.701756;8.145046 50.698826;8.14384392842367 50.6971323572983;8.282309 50.580562;8.30631 50.654988;8.251434 50.755769;8.13807774829107 50.7653808527917',
'8.14384392842367 50.6971323572983;8.143278 50.696335;8.142462 50.695396;8.141846 50.695007;8.140502 50.694244;8.139636 50.694103;8.139005 50.694027;8.138088 50.693928;8.137884 50.69409;8.137591 50.694424;8.136864 50.695366;8.136502 50.695496;8.133763 50.69621;8.132635 50.696503;8.132227 50.69659;8.131864 50.696617;8.131658 50.696518;8.130539 50.695812;8.1293745 50.694904;8.128255 50.693893;8.1279125 50.693615;8.127522 50.693237;8.127225 50.693024;8.126906 50.69288;8.12654 50.69278;8.126539 50.692387;8.126379 50.692158;8.126424 50.691895;8.126605 50.691734;8.126603 50.69133;8.126717 50.69103;8.126875 50.690796;8.127073 50.689304;8.127002 50.688595;8.126658 50.687614;8.126089 50.687603;8.1262245 50.68721;8.126108 50.68675;8.126083 50.686474;8.125584 50.68577;8.125594 50.685688;8.1256075 50.68549;8.1256485 50.685272;8.126013 50.684826;8.125988 50.684418;8.126189 50.684273;8.125983 50.68397;8.126049 50.68323;8.126116 50.683014;8.126074 50.68279;8.125664 50.682846;8.125346 50.68279;8.125254 50.682602;8.124913 50.68244;8.124616 50.68238;8.124433 50.682213;8.124523 50.68172;8.124294 50.68139;8.124089 50.681255;8.1237 50.6811;8.12261 50.679977;8.122498 50.679867;8.122078 50.6796;8.121967 50.679367;8.121734 50.67888;8.120776 50.6783;8.12048 50.678055;8.120444 50.677967;8.12041 50.67788;8.120274 50.677692;8.119952 50.67749;8.119702 50.677246;8.118586 50.676556;8.117925 50.676556;8.117447 50.676483;8.11674 50.676296;8.116466 50.676167;8.115874 50.676155;8.115737 50.675938;8.11503 50.675922;8.114484 50.67578;8.11396 50.675755;8.11355 50.675827;8.113096 50.67581;8.112754 50.675755;8.112632 50.675537;8.111815 50.67409;8.110691 50.67184;8.110462 50.671303;8.1104145 50.6708;8.109977 50.668262;8.1099415 50.66806;8.109854 50.667473;8.109854 50.666756;8.109878 50.661327;8.109927 50.660267;8.110051 50.65764;8.110066 50.65733;8.112979 50.653976;8.114234 50.65253;8.114346 50.652405;8.114861 50.652172;8.115367 50.65194;8.117277 50.651283;8.118462 50.650776;8.119027 50.650543;8.11937 50.65021;8.120398 50.64888;8.120638 50.64858;8.121058 50.64814;8.123788 50.645287;8.124446 50.645054;8.125014 50.64505;8.126004 50.645126;8.126838 50.645195;8.127024 50.64511;8.1275425 50.644875;8.127325 50.644142;8.126553 50.64152;8.129042 50.638638;8.129111 50.63845;8.128722 50.63816;8.129901 50.63706;8.130831 50.63625;8.131857 50.63678;8.137508 50.63314;8.139142 50.632088;8.139986 50.631546;8.140375 50.630947;8.140823 50.630257;8.140823 50.63011;8.140731 50.63001;8.139272 50.629578;8.140564 50.62797;8.141448 50.626984;8.141447 50.626755;8.1414 50.626465;8.14124 50.626247;8.140348 50.625927;8.139802 50.625706;8.139801 50.62561;8.139824 50.62544;8.140049 50.62477;8.140366 50.62412;8.140272 50.624035;8.137743 50.623158;8.137881 50.62281;8.137947 50.622635;8.138085 50.622303;8.138153 50.62213;8.138329 50.62165;8.138869 50.620117;8.138891 50.6199;8.138775 50.61977;8.137614 50.61928;8.137021 50.619194;8.136088 50.619198;8.13602 50.61899;8.136087 50.618908;8.136634 50.61882;8.136954 50.618645;8.137384 50.61863;8.137658 50.618645;8.1377945 50.618557;8.137861 50.618355;8.137656 50.618137;8.134975 50.61594;8.134773 50.615776;8.134517 50.61556;8.132446 50.61386;8.132242 50.613693;8.1308775 50.61257;8.129895 50.611996;8.126934 50.61057;8.12602 50.610004;8.127303 50.608456;8.127651 50.608036;8.1291275 50.607395;8.130465 50.60702;8.133629 50.60613;8.13368 50.605854;8.133718 50.605637;8.13804 50.604588;8.139609 50.604137;8.141201 50.60375;8.142471 50.603436;8.143475 50.603565;8.144428 50.603275;8.1452 50.602737;8.146156 50.602417;8.147155 50.602127;8.147769 50.60179;8.148268 50.60143;8.148494 50.601124;8.148643 50.600758;8.148831 50.60029;8.148999 50.6;8.149307 50.59946;8.149398 50.599403;8.149509 50.599403;8.150376 50.5994;8.151982 50.59958;8.152023 50.596554;8.152323 50.593693;8.151601 50.592335;8.151382 50.59193;8.150199 50.589474;8.14991 50.588802;8.149617 50.58848;8.148804 50.587723;8.149033 50.58764;8.147619 50.58573;8.147461 50.58547;8.147372 50.58522;8.147248 50.584045;8.14677 50.584057;8.146662 50.583275;8.146689 50.582924;8.146906 50.58198;8.146861 50.58187;8.14657 50.58151;8.145493 50.579964;8.14588 50.579823;8.145349 50.579216;8.142362 50.574203;8.142252 50.573956;8.141983 50.573505;8.141643 50.573097;8.141306 50.572777;8.140712 50.572876;8.140037 50.57222;8.139839 50.571465;8.139778 50.57068;8.139669 50.57027;8.140264 50.570103;8.139731 50.568645;8.139717 50.56815;8.139715 50.568024;8.139649 50.567905;8.139332 50.56757;8.139264 50.56741;8.139524 50.5666;8.139503 50.566425;8.139366 50.56638;8.138502 50.56622;8.13814 50.566044;8.137982 50.565884;8.137917 50.56575;8.137324 50.56569;8.136097 50.56548;8.136336 50.56434;8.134699 50.564026;8.135355 50.562344;8.133538 50.5618;8.133223 50.561623;8.133955 50.561016;8.133367 50.560722;8.133209 50.560535;8.132922 50.559563;8.132809 50.5589;8.132643 50.55793;8.132505 50.557755;8.132299 50.557755;8.131844 50.557926;8.131523 50.55797;8.131045 50.55798;8.130773 50.557964;8.13059 50.55786;8.130418 50.557453;8.130846 50.5574;8.1313715 50.55727;8.131805 50.5571;8.132378 50.556828;8.13402 50.556427;8.134251 50.556328;8.134545 50.5562;8.13451704521677 50.5560117330925;8.283268 50.549506;8.282309 50.580562;8.14384392842367 50.6971323572983',
'8.306852 50.510985;8.279473 50.476123;8.262212 50.26196;8.386445 50.343851;8.37594 50.438221;8.341853 50.500582;8.306852 50.510985',
'8.279473 50.476123;8.128357 50.391098;8.119947 50.358504;8.254594 50.249789;8.262212 50.26196;8.279473 50.476123',
'8.258095 50.204492;8.224051 50.14803;8.254025 50.037326;8.430245 50.098136;8.43851 50.109856;8.388222 50.193855;8.258095 50.204492',
'7.8541713 50.128506;7.8534074 50.1279;7.852896 50.127583;7.849062 50.125813;7.847338 50.124943;7.8472114 50.124805;7.847218 50.12404;7.8467913 50.123955;7.8469014 50.12364;7.846684 50.121704;7.846735 50.12088;7.846579 50.119194;7.8459315 50.1153;7.8457494 50.114155;7.8443594 50.111893;7.8442245 50.111504;7.8430347 50.111694;7.842715 50.111626;7.8388386 50.10981;7.8385787 50.109753;7.8378096 50.109764;7.83541 50.110016;7.835819 50.1098;7.8369555 50.109417;7.8368726 50.109116;7.8371315 50.10894;7.837393 50.108406;7.8375707 50.107883;7.8375726 50.107555;7.8374887 50.107376;7.8368087 50.10688;7.8367686 50.106567;7.835467 50.10618;7.835101 50.106438;7.834163 50.106075;7.834015 50.105965;7.833972 50.10587;7.8340383 50.105694;7.8342323 50.105583;7.834515 50.105503;7.834771 50.105118;7.835095 50.10489;7.835248 50.104504;7.835143 50.104298;7.834313 50.103775;7.834751 50.103146;7.835837 50.103676;7.83601 50.103535;7.835859 50.10323;7.8359027 50.103096;7.836079 50.103016;7.836145 50.10252;7.836598 50.102383;7.8371315 50.10207;7.8380566 50.10195;7.8387413 50.10153;7.8387647 50.10138;7.8386803 50.10128;7.8368006 50.100258;7.8373036 50.100143;7.8372846 50.09981;7.8371596 50.09959;7.8369417 50.099625;7.836391 50.099464;7.836286 50.099205;7.8339963 50.09925;7.8339252 50.09947;7.833587 50.099537;7.8316526 50.0995;7.8316894 50.098816;7.8301935 50.098675;7.8302417 50.098396;7.829702 50.09809;7.829597 50.09769;7.8303576 50.09785;7.8309855 50.097855;7.8316817 50.097713;7.8317986 50.09718;7.8317857 50.09608;7.8319054 50.095245;7.831443 50.09426;7.8309097 50.093624;7.8304677 50.092857;7.8309846 50.09279;7.8317366 50.093918;7.8320727 50.094162;7.832433 50.0943;7.8329506 50.0941;7.8335752 50.094563;7.8340673 50.09477;7.8344693 50.095028;7.834939 50.095245;7.83532 50.095306;7.835477 50.095276;7.835479 50.095104;7.835232 50.095;7.835189 50.09477;7.834966 50.094555;7.834586 50.094364;7.83452 50.094177;7.834611 50.094;7.834949 50.093876;7.835487 50.09386;7.835733 50.093933;7.8360257 50.09376;7.835356 50.09337;7.834955 50.09289;7.833455 50.092484;7.8336153 50.09212;7.834444 50.09227;7.83505 50.09226;7.835499 50.09216;7.835233 50.091652;7.834899 50.091316;7.835418 50.09086;7.835734 50.09067;7.8366547 50.090458;7.8366117 50.090008;7.835299 50.088676;7.8362427 50.088432;7.8368487 50.088337;7.8372107 50.087975;7.8380227 50.087315;7.8380938 50.086994;7.8374467 50.08629;7.8377166 50.086185;7.838009 50.086304;7.8384056 50.086952;7.838247 50.08756;7.8388276 50.087635;7.8390565 50.086956;7.8389015 50.086594;7.8381677 50.085884;7.8377686 50.08519;7.8383517 50.085075;7.8383527 50.084846;7.8376627 50.08421;7.8346605 50.08321;7.834265 50.08304;7.833461 50.082478;7.8317785 50.08207;7.8308525 50.081886;7.82924 50.081707;7.827177 50.08161;7.826526 50.081722;7.8255134 50.082138;7.8239107 50.082886;7.822834 50.083412;7.821502 50.084362;7.821413 50.084232;7.821421 50.08329;7.821539 50.082657;7.821166 50.081688;7.820474 50.08127;7.8185277 50.080666;7.816982 50.08062;7.816509 50.080776;7.816103 50.081047;7.815786 50.08138;7.815534 50.082085;7.815083 50.0823;7.814699 50.08259;7.814919 50.083122;7.814917 50.083324;7.814692 50.08347;7.8141303 50.083565;7.8127613 50.083633;7.8113456 50.083946;7.80919 50.08427;7.808428 50.08428;7.8074203 50.084045;7.8069944 50.084072;7.806498 50.08433;7.8043203 50.084496;7.8032427 50.08475;7.8028398 50.084663;7.801325 50.083515;7.800773 50.082993;7.800545 50.082848;7.800124 50.082314;7.7998443 50.080956;7.7994013 50.080273;7.7981324 50.0791;7.7972207 50.07807;7.79627 50.07684;7.794975 50.075966;7.793879 50.075092;7.792806 50.074627;7.7912645 50.073856;7.7896786 50.073418;7.7887387 50.073025;7.78798 50.072617;7.787289 50.072006;7.786754 50.071716;7.786487 50.07137;7.786448 50.071053;7.786561 50.07065;7.7867713 50.07013;7.787556 50.070137;7.787763 50.069584;7.787674 50.069035;7.787247 50.069035;7.7838974 50.067215;7.7823787 50.06663;7.781819 50.06657;7.7804093 50.066685;7.7777395 50.06667;7.7767515 50.06673;7.7765145 50.066708;7.774392 50.06696;7.773526 50.066936;7.773547 50.06641;7.773572 50.066338;7.7735343 50.065834;7.7728543 50.063942;7.7727513 50.06293;7.772652 50.06134;7.7724442 50.05942;7.772406 50.05864;7.7724314 50.05834;7.772592 50.057907;7.773343 50.056667;7.77477 50.055084;7.776693 50.053215;7.77987 50.05082;7.7841167 50.04852;7.7846956 50.048206;7.7849903 50.048046;7.7905164 50.045063;7.795144 50.043026;7.7974286 50.04212;7.7999954 50.041115;7.8017 50.040447;7.8046675 50.039665;7.806556 50.039097;7.8073225 50.038837;7.807504 50.038624;7.807731 50.03826;7.808071 50.037918;7.808546 50.03747;7.809136 50.036987;7.809562 50.03664;7.81566 50.032433;7.81645 50.031918;7.8194575 50.029392;7.830642 50.02175;7.832339 50.020596;7.8333077 50.020103;7.8338256 50.01987;7.8354 50.019257;7.83983 50.017796;7.8434043 50.016678;7.8470016 50.01542;7.8494315 50.01452;7.850286 50.01417;7.851029 50.013756;7.85166 50.013283;7.8532157 50.01203;7.8547974 50.01059;7.856964 50.008675;7.857593 50.007923;7.857933 50.007446;7.858342 50.00674;7.8584323 50.006474;7.858479 50.00634;7.858663 50.005672;7.858757 50.00504;7.858789 50.004322;7.858752 50.00313;7.858868 50.002094;7.859219 50.00059;7.859451 49.999996;7.859561 49.999733;7.859973 49.998814;7.860583 49.9974;7.8612385 49.99566;7.8624134 49.98961;7.8637214 49.985146;7.864229 49.983097;7.864386 49.982643;7.8646393 49.98192;7.864798 49.98158;7.864995 49.981148;7.8652663 49.98076;7.867463 49.97842;7.8677506 49.978115;7.8695617 49.976345;7.8701787 49.975792;7.8709245 49.975407;7.873252 49.97441;7.8777733 49.972645;7.878909 49.972363;7.880427 49.9721;7.881338 49.972023;7.8819447 49.971954;7.8839693 49.971874;7.8843026 49.97187;7.8860373 49.971855;7.887718 49.97181;7.8889446 49.9718;7.89817026566713 49.9722641513484;7.936345 50.097624;7.92538533162609 50.1085004374946;7.925444 50.10821;7.925575 50.1079;7.9258776 50.10754;7.9265246 50.10705;7.9265685 50.106926;7.9264245 50.10639;7.92645 50.10591;7.9263506 50.105465;7.926376 50.1052;7.9264617 50.105034;7.926632 50.10487;7.9274096 50.10448;7.9277506 50.104412;7.9290724 50.104427;7.9298325 50.10372;7.929428 50.103527;7.9287233 50.103306;7.9280634 50.10319;7.9269457 50.103157;7.9263897 50.103184;7.9252367 50.10332;7.924654 50.103477;7.924549 50.103313;7.923864 50.103336;7.923715 50.103256;7.923785 50.103012;7.924066 50.10271;7.925058 50.101894;7.925123 50.101784;7.92489 50.10162;7.924742 50.1014;7.9207864 50.103493;7.9203935 50.1039;7.9202914 50.10557;7.9206767 50.105755;7.9200945 50.108288;7.91947 50.108807;7.917372 50.111237;7.916336 50.112167;7.9157763 50.112576;7.9162054 50.11276;7.9131856 50.115475;7.913079 50.115543;7.9125867 50.115585;7.911942 50.115852;7.9082503 50.119335;7.9079924 50.119514;7.9074135 50.119663;7.9053507 50.120697;7.904639 50.12113;7.9044027 50.12138;7.904015 50.12165;7.903221 50.121895;7.9008856 50.122353;7.9005213 50.122364;7.8996897 50.122154;7.899286 50.12199;7.8982577 50.121876;7.89734 50.121597;7.897129 50.121445;7.896645 50.120594;7.8962193 50.12025;7.895367 50.119987;7.89507 50.119682;7.8948154 50.119545;7.8929176 50.118824;7.8917675 50.118313;7.891534 50.11816;7.8911777 50.117336;7.8909016 50.11706;7.8905187 50.11684;7.889837 50.116646;7.889046 50.116505;7.8871274 50.115788;7.8865314 50.11551;7.8862977 50.11532;7.8861537 50.114742;7.8860054 50.114616;7.8856435 50.114437;7.8847666 50.114407;7.8845086 50.11453;7.8842278 50.114815;7.883819 50.1151;7.882868 50.1161;7.8826523 50.11625;7.8814063 50.116833;7.8810873 50.1166;7.878936 50.11581;7.878443 50.115807;7.877166 50.117405;7.875265 50.11925;7.8751993 50.11947;7.8732095 50.11946;7.871329 50.119385;7.870214 50.11964;7.869483 50.119846;7.869032 50.12009;7.868666 50.120377;7.868471 50.120636;7.8682513 50.121292;7.867421 50.120785;7.8667603 50.120586;7.8661823 50.120518;7.8657975 50.120586;7.8657265 50.121216;7.8658314 50.121586;7.866483 50.12259;7.866483 50.12271;7.8662863 50.12307;7.8660073 50.12333;7.8655124 50.123615;7.8653765 50.124462;7.8653116 50.1246;7.8651385 50.12475;7.8647957 50.124844;7.864112 50.124855;7.8638105 50.124924;7.8630357 50.125317;7.861249 50.12653;7.860795 50.127037;7.8600645 50.12742;7.8595705 50.127525;7.8592296 50.127552;7.8590565 50.12752;7.8583937 50.12763;7.855842 50.12832;7.854941 50.128468;7.8541713 50.128506',
'7.936345 50.097624;7.89817026566713 49.9722641513484;7.899817 49.972347;7.8999953 49.97236;7.901551 49.972435;7.9038267 49.972713;7.9055815 49.972923;7.907218 49.973076;7.9118214 49.973236;7.914589 49.973545;7.9158998 49.973866;7.916547 49.974022;7.9180074 49.97416;7.9185767 49.97412;7.9197145 49.97396;7.920434 49.973907;7.926719 49.974117;7.9296927 49.974148;7.9311647 49.97416;7.9321113 49.974167;7.9336843 49.973984;7.935237 49.973854;7.936335 49.973797;7.9379215 49.97391;7.9402595 49.974186;7.941657 49.97435;7.943564 49.974617;7.9458284 49.97488;7.9464345 49.974953;7.9469166 49.97501;7.9486203 49.975403;7.9519706 49.9761;7.954905 49.976543;7.955128 49.976578;7.958964 49.977158;7.962107 49.977516;7.963872 49.977757;7.9680834 49.977955;7.970173 49.97836;7.971891 49.978767;7.9745846 49.979668;7.97652 49.98032;7.976977 49.980473;7.982947 49.982666;7.9834886 49.982864;7.985231 49.983505;7.992398 49.986042;7.9950733 49.986862;7.9990096 49.98791;7.9999986 49.988213;8.000324 49.98831;8.001987 49.98882;8.005449 49.989956;8.007342 49.99066;8.008277 49.99101;8.008925 49.99125;8.01122 49.992153;8.0146675 49.99351;8.0156555 49.99394;8.018518 49.995182;8.018876 49.99534;8.020295 49.995953;8.02137 49.996445;8.026644 49.998856;8.028171 49.999577;8.029122 50;8.029689 50.00025;8.031165 50.000893;8.032073 50.001263;8.032931 50.001614;8.034517 50.002243;8.036171 50.002846;8.037198 50.003193;8.03814414746832 50.0034685532575;8.031847 50.066458;7.936345 50.097624',
'8.119947 50.358504;8.0737511803755 50.3300084757069;8.07376 50.329937;8.07622 50.33022;8.076466 50.33029;8.076848 50.330482;8.077186 50.330566;8.078383 50.330723;8.078925 50.33077;8.0795555 50.331074;8.080029 50.33119;8.080615 50.33125;8.081227 50.331207;8.083195 50.330837;8.083266 50.330563;8.083898 50.33045;8.084351 50.330338;8.084738 50.330177;8.085189 50.330193;8.085664 50.33015;8.086185 50.329937;8.086821 50.329636;8.08725 50.32952;8.087975 50.329407;8.088721 50.329338;8.089533 50.329353;8.090029 50.329445;8.092576 50.33023;8.093953 50.330566;8.094201 50.33055;8.094406 50.330338;8.094452 50.330177;8.094386 50.329945;8.09403 50.32937;8.093584 50.3284;8.093587 50.328167;8.093681 50.32788;8.094404 50.327766;8.094968 50.32771;8.095307 50.327724;8.09569 50.327843;8.09558 50.327454;8.096573 50.327717;8.097123 50.32665;8.098951 50.327057;8.099044 50.32687;8.099608 50.326942;8.099609 50.3267;8.100872 50.327003;8.101616 50.32705;8.102814 50.32707;8.102692 50.32542;8.103191 50.325394;8.103033 50.32499;8.102678 50.32431;8.102571 50.32369;8.10264 50.32343;8.106077 50.32302;8.106562 50.321625;8.106653 50.321552;8.107173 50.321423;8.106556 50.31944;8.105988 50.31951;8.105414 50.31775;8.106138 50.31749;8.105249 50.315536;8.105928 50.315426;8.105392 50.31454;8.105551 50.314415;8.105329 50.314125;8.102448 50.309845;8.102859 50.30969;8.10374 50.30946;8.104534 50.309174;8.103866 50.30783;8.104143 50.30715;8.104552 50.306923;8.105934 50.30645;8.107723 50.305775;8.108358 50.305504;8.10931 50.30519;8.110284 50.30473;8.111011 50.304356;8.111555 50.304127;8.112167 50.30396;8.11338 50.30353;8.113365 50.30341;8.113477 50.303383;8.113521 50.303246;8.113777 50.301903;8.114021 50.301258;8.114143 50.300873;8.114194 50.300583;8.114263 50.29995;8.116686 50.30061;8.118021 50.301075;8.11823 50.3;8.118325 50.2996;8.119316 50.29966;8.119409 50.298798;8.119409 50.298637;8.120064 50.296463;8.120762 50.296467;8.120947 50.296047;8.120902 50.295815;8.120637 50.29541;8.119981 50.295483;8.119738 50.294918;8.119715 50.29476;8.119914 50.293037;8.120612 50.29301;8.120639 50.292694;8.120753 50.29245;8.121434 50.29186;8.1211 50.291496;8.122117 50.291096;8.122503 50.290867;8.12298 50.290447;8.120558 50.28905;8.121514 50.28797;8.122059 50.287483;8.122985 50.28697;8.121811 50.285065;8.121195 50.285236;8.119917 50.283195;8.119942 50.283043;8.1210985 50.27905;8.121546 50.277344;8.1207 50.276253;8.118191 50.27445;8.117429 50.27397;8.11577 50.27311;8.115142 50.272835;8.1145115 50.2726;8.114063 50.272335;8.112766 50.27146;8.112338 50.271088;8.112227 50.27087;8.112208 50.270653;8.112306 50.270493;8.112301 50.27029;8.112113 50.270004;8.11143 50.26955;8.111799 50.26886;8.111866 50.2686;8.11187 50.268482;8.109232 50.26402;8.108736 50.264076;8.108181 50.26329;8.107029 50.261177;8.106873 50.260986;8.106648 50.260902;8.1058655 50.26069;8.104716 50.260372;8.102961 50.259758;8.098001 50.261932;8.097574 50.261642;8.094017 50.263187;8.093289 50.263546;8.093713 50.264095;8.094026 50.264416;8.09454 50.264824;8.093297 50.26512;8.092894 50.26476;8.091872 50.26533;8.089921 50.26438;8.08925 50.264324;8.087497 50.26326;8.084625 50.261845;8.082897 50.26094;8.082424 50.260838;8.081546 50.26076;8.079517 50.260773;8.079536 50.26094;8.079646 50.26119;8.08107 50.263172;8.082735 50.26571;8.074668 50.267017;8.074443 50.267136;8.074122 50.26748;8.073961 50.26777;8.073823 50.268173;8.073398 50.269848;8.073395 50.270164;8.073768 50.27119;8.073721 50.27144;8.072437 50.273254;8.071337 50.272842;8.070731 50.272667;8.069626 50.27246;8.067129 50.271927;8.067014 50.27216;8.066576 50.27255;8.065202 50.272167;8.064131 50.273407;8.061613 50.27272;8.061162 50.272675;8.060846 50.272747;8.060303 50.273006;8.059418 50.273376;8.057092 50.273674;8.056761 50.27286;8.0554495 50.273026;8.054802 50.27307;8.054732 50.273247;8.054772 50.273796;8.054635 50.27394;8.054271 50.27405;8.053772 50.27412;8.053207 50.27406;8.05278 50.273987;8.052335 50.273846;8.051568 50.273697;8.049678 50.273457;8.04974 50.27395;8.045582 50.27241;8.044752 50.272144;8.044209 50.272205;8.043663 50.272312;8.043348 50.272327;8.043037 50.272285;8.040538 50.271667;8.040042 50.27158;8.039727 50.271576;8.039297 50.271664;8.038958 50.27169;8.038734 50.27166;8.038487 50.271484;8.038376 50.271297;8.036035 50.270992;8.036382 50.269638;8.036343 50.26944;8.036142 50.26929;8.035784 50.269104;8.035635 50.265995;8.036189 50.264812;8.034368 50.264427;8.033487 50.264355;8.033421 50.264164;8.0324335 50.26374;8.032073 50.263683;8.031508 50.26368;8.030518 50.263428;8.029798 50.263355;8.029803 50.262978;8.029787 50.26217;8.029427 50.262096;8.028978 50.262066;8.028481 50.262062;8.028006 50.26226;8.027804 50.262146;8.027308 50.261955;8.026769 50.26182;8.026182 50.26179;8.025618 50.26185;8.025116 50.260212;8.025366 50.259953;8.022316 50.258293;8.021755 50.25816;8.024176 50.25519;8.025502 50.253494;8.028985 50.254738;8.028779 50.25507;8.029225 50.25518;8.029402 50.255207;8.0320425 50.255566;8.038209 50.248947;8.036305 50.246773;8.03608 50.246655;8.035901 50.24651;8.035701 50.24625;8.0354595 50.245686;8.035505 50.245567;8.036958 50.24468;8.038954 50.245644;8.039566 50.245415;8.040384 50.244854;8.040025 50.24465;8.043498 50.24248;8.044154 50.242413;8.045725 50.243404;8.0470705 50.244045;8.047317 50.244102;8.047743 50.244164;8.048219 50.24418;8.049343 50.244446;8.049348 50.244354;8.048767 50.24283;8.048246 50.24151;8.048141 50.240757;8.048823 50.240627;8.049566 50.240326;8.049843 50.240147;8.050003 50.239986;8.050072 50.239815;8.05113 50.240047;8.051497 50.2393;8.051569 50.238895;8.051597 50.238388;8.051556 50.238087;8.053167 50.237198;8.054844 50.236423;8.056338 50.235954;8.057174 50.235622;8.056548 50.23526;8.058272 50.23427;8.0578 50.234123;8.057191 50.234035;8.056045 50.23377;8.055618 50.233578;8.05508 50.233273;8.054585 50.232952;8.054161 50.23262;8.054267 50.232418;8.054504 50.232185;8.054644 50.2321;8.053698 50.23162;8.052666 50.23098;8.051409 50.230354;8.050289 50.229828;8.049055 50.22913;8.047126 50.227978;8.047031 50.2282;8.046716 50.228252;8.045371 50.22767;8.04501 50.227592;8.044537 50.227562;8.044018 50.227703;8.0433855 50.227787;8.041872 50.22784;8.040032 50.226963;8.040372 50.226696;8.040917 50.22639;8.040786 50.225956;8.039877 50.22452;8.0395 50.224045;8.039052 50.22365;8.038739 50.22346;8.03870013177485 50.2234513817683;8.089253 50.155982;8.224051 50.14803;8.258095 50.204492;8.254594 50.249789;8.119947 50.358504',
'8.386445 50.343851;8.262212 50.26196;8.254594 50.249789;8.258095 50.204492;8.388222 50.193855;8.45961 50.267185;8.458874 50.288924;8.386445 50.343851',
'8.089253 50.155982;8.031847 50.066458;8.03814414746832 50.0034685532575;8.038362 50.003532;8.040114 50.00386;8.042534 50.00416;8.049932 50.00477;8.051778 50.00488;8.05316 50.004967;8.05454 50.005047;8.055895 50.005116;8.060053 50.0053;8.061973 50.005363;8.063113 50.0054;8.067785 50.005623;8.069637 50.005764;8.076007 50.006405;8.076371 50.006466;8.078816 50.006893;8.080263 50.00715;8.083555 50.00793;8.086019 50.00861;8.087892 50.009186;8.094072 50.01108;8.09758 50.0124;8.098586 50.012875;8.098657 50.01291;8.099998 50.01354;8.103443 50.015163;8.105096 50.016014;8.108538 50.01772;8.109106 50.018005;8.111253 50.018753;8.114043 50.019726;8.1221895 50.0221;8.122871 50.022297;8.127939 50.023777;8.130625 50.02453;8.131163 50.02462;8.135847 50.025528;8.138041 50.025875;8.144674 50.02705;8.156918 50.029163;8.159194 50.029797;8.165615 50.031876;8.167323 50.03235;8.169325 50.032894;8.172448 50.033634;8.17489 50.034195;8.176471 50.03456;8.177843 50.03485;8.180204 50.035183;8.18135 50.03527;8.1827 50.035328;8.184184 50.03543;8.186363 50.03552;8.190251 50.03553;8.193255 50.035255;8.195594 50.03508;8.197403 50.034943;8.199999 50.03467;8.2048645 50.034164;8.205091 50.03414;8.209526 50.03351;8.211578 50.033165;8.211658 50.033154;8.211823 50.033127;8.21207 50.033085;8.212258 50.033043;8.215736 50.032356;8.2174 50.032097;8.217791 50.03206;8.219669 50.03189;8.221224 50.03175;8.222184 50.031685;8.224035 50.031563;8.225153 50.03153;8.226943 50.03147;8.228743 50.031376;8.228849 50.03138;8.229161 50.031345;8.229457 50.03132;8.230827 50.0312;8.232535 50.031;8.235729 50.030506;8.239576 50.029526;8.241376 50.02902;8.243323 50.028435;8.24673 50.026386;8.249049 50.024956;8.253245 50.022453;8.25334056639361 50.022392296883;8.254025 50.037326;8.224051 50.14803;8.089253 50.155982',
'8.430245 50.098136;8.254025 50.037326;8.25334056639361 50.022392296883;8.253478 50.022305;8.254145 50.021908;8.263871 50.01615;8.265989 50.014675;8.267226 50.013817;8.269321 50.01236;8.271578 50.010677;8.273058 50.009438;8.273359 50.009167;8.274451 50.00817;8.276145 50.006573;8.276226 50.006496;8.276329 50.006397;8.276392 50.00633;8.279088 50.00372;8.279449 50.003372;8.281342 50.00154;8.28293 50;8.284122 49.998844;8.285638 49.997234;8.287527 49.99567;8.288039 49.995247;8.288842 49.994682;8.290231 49.993706;8.293812 49.99156;8.298017 49.98935;8.2992115 49.98872;8.299999 49.988304;8.306475 49.98489;8.308399 49.983753;8.310456 49.98235;8.32079 49.9747;8.321168 49.974426;8.321345 49.974316;8.321449 49.974236;8.321901 49.97387;8.323101 49.9729;8.324433 49.97183;8.332366 49.964355;8.333213 49.9631;8.335062 49.96036;8.338268 49.95562;8.34229 49.94966;8.34246 49.94938;8.342721 49.948746;8.342772 49.941364;8.342858 49.940998;8.343064 49.94054;8.345214 49.93565;8.34616 49.933487;8.347048 49.93146;8.347402 49.930656;8.347612 49.930225;8.347773 49.929897;8.349232 49.92747;8.3523855 49.922283;8.353538 49.920242;8.354124 49.919014;8.354363 49.91838;8.354389 49.918274;8.354514 49.917747;8.354621 49.916912;8.354637 49.915787;8.354658 49.914547;8.354453 49.91122;8.354167 49.90974;8.353816 49.908573;8.353447 49.907646;8.353052 49.90697;8.352592 49.906353;8.352067 49.905746;8.351215 49.904804;8.349835 49.903397;8.348875 49.902245;8.348544 49.901848;8.347293 49.899998;8.346505 49.898834;8.345553 49.897686;8.344772 49.896854;8.344361 49.896294;8.343886 49.89556;8.342979 49.89384;8.342374 49.89256;8.341965 49.891544;8.341622 49.89046;8.341259 49.889137;8.341092 49.887688;8.341027 49.886597;8.341017 49.885227;8.341175 49.88437;8.341597 49.882816;8.342719 49.879974;8.342846 49.8797;8.343577 49.87807;8.343778 49.87763;8.344789 49.87573;8.345541 49.87455;8.345873 49.87409;8.346093 49.87378;8.346788 49.872818;8.348434 49.871094;8.352377 49.867203;8.353543 49.866108;8.35368 49.865982;8.354327 49.865376;8.354981 49.864883;8.35566 49.864532;8.356533 49.864166;8.357821 49.86383;8.35863 49.863693;8.359873 49.863483;8.363163 49.86323;8.364295 49.86318;8.365671 49.86311;8.368178 49.862946;8.369877 49.86275;8.371143 49.862514;8.371886 49.862316;8.373806 49.861828;8.375858 49.861214;8.3766078731602 49.8609265176098;8.411872 49.861064;8.428374 49.88936;8.430245 50.098136',
'7.98941 50.238476;7.988687 50.23838;7.988419 50.238277;7.988286 50.238163;7.9885473 50.23759;7.9875402 50.237137;7.98752 50.237034;7.9880533 50.236244;7.9881244 50.235996;7.9879823 50.235146;7.987874 50.234856;7.987449 50.23462;7.9869785 50.2345;7.9868226 50.234413;7.98678 50.23427;7.9868445 50.233116;7.986944 50.23255;7.9883122 50.23171;7.988429 50.23151;7.9884353 50.23109;7.9882164 50.23076;7.9874835 50.23006;7.987871 50.2298;7.9866834 50.228176;7.9862423 50.227623;7.9854636 50.227055;7.9843426 50.226627;7.9838037 50.226524;7.9820933 50.226368;7.9802523 50.225906;7.9796715 50.225685;7.9780617 50.22491;7.977769 50.224834;7.976891 50.224785;7.973821 50.22504;7.9733496 50.225006;7.9730124 50.224934;7.9724994 50.224625;7.971924 50.224;7.9715137 50.22293;7.971317 50.222595;7.9709377 50.222336;7.970196 50.22224;7.969182 50.22219;7.9676304 50.221992;7.9656134 50.221313;7.964069 50.22071;7.962152 50.220684;7.961882 50.22064;7.9611454 50.220303;7.960339 50.22001;7.959935 50.219933;7.9592805 50.219955;7.9582167 50.22015;7.9564347 50.220226;7.956396 50.21985;7.954614 50.21995;7.9534135 50.22035;7.9532313 50.22035;7.9526086 50.21995;7.9517365 50.219486;7.9512234 50.219135;7.9510655 50.219135;7.9507465 50.219303;7.948206 50.217625;7.949444 50.216564;7.9490867 50.21633;7.95075 50.214733;7.9514027 50.214108;7.9502106 50.213737;7.948998 50.213425;7.948195 50.21293;7.94672 50.21227;7.9470844 50.21207;7.946801 50.211506;7.9468045 50.21132;7.947617 50.209938;7.942923 50.208908;7.9427147 50.209225;7.942174 50.209164;7.940882 50.20966;7.9391866 50.209877;7.9386024 50.209774;7.9377737 50.209507;7.936136 50.209076;7.935326 50.208942;7.9325776 50.208805;7.9296403 50.208286;7.928532 50.208115;7.92743 50.208004;7.9244137 50.207825;7.9232635 50.207817;7.920578 50.207912;7.920286 50.207855;7.9190702 50.207355;7.9179387 50.206814;7.915205 50.205826;7.914114 50.205067;7.912761 50.203773;7.9121103 50.203846;7.9116864 50.203568;7.9108267 50.203762;7.9099927 50.20383;7.9098387 50.2038;7.907633 50.202065;7.907319 50.201946;7.907045 50.201912;7.9068313 50.201965;7.907674 50.200996;7.907601 50.200638;7.907617 50.20033;7.907708 50.199688;7.907871 50.199417;7.9084167 50.199287;7.909061 50.19937;7.909003 50.199097;7.9111414 50.198;7.9109836 50.197857;7.9111834 50.197575;7.9118485 50.196957;7.912288 50.196384;7.9124975 50.19596;7.912514 50.195652;7.9124484 50.195473;7.9122186 50.195297;7.9124885 50.195103;7.9107537 50.194252;7.9105616 50.194023;7.9102826 50.193386;7.910103 50.19325;7.9077473 50.192577;7.907494 50.19245;7.907178 50.19178;7.9070373 50.191643;7.9065742 50.191425;7.9057074 50.191185;7.9048557 50.190845;7.9044046 50.190582;7.904042 50.190445;7.902023 50.190063;7.901477 50.18986;7.900988 50.189636;7.900343 50.189205;7.899918 50.18884;7.8997 50.188774;7.8992915 50.18879;7.8983884 50.189007;7.8977165 50.189075;7.897516 50.189022;7.89667 50.188526;7.895121 50.18736;7.894489 50.187035;7.894317 50.186806;7.8941903 50.18641;7.893833 50.18614;7.893558 50.186073;7.8927255 50.186054;7.8915486 50.18586;7.8913503 50.18576;7.8909283 50.185345;7.8903427 50.1842;7.890001 50.18399;7.888682 50.1837;7.888 50.183266;7.8866763 50.182735;7.8850894 50.182236;7.8852415 50.181847;7.8845444 50.181366;7.8828926 50.181374;7.8828106 50.18117;7.882879 50.180958;7.883033 50.180843;7.8836284 50.180664;7.8835716 50.179916;7.8837676 50.179234;7.8842797 50.179276;7.8844113 50.17892;7.8836865 50.17877;7.8842516 50.177753;7.8837614 50.177616;7.8845205 50.176373;7.8846726 50.17626;7.886342 50.17608;7.887025 50.176216;7.887323 50.176342;7.888188 50.17541;7.888557 50.17485;7.888281 50.17466;7.888889 50.173676;7.8868184 50.173172;7.886456 50.173008;7.886329 50.172897;7.886426 50.172146;7.8863845 50.172024;7.886215 50.17184;7.8855996 50.171444;7.8852572 50.170853;7.8848605 50.16993;7.8859744 50.169674;7.885855 50.169273;7.8854055 50.169346;7.8844743 50.168243;7.8844976 50.16806;7.8847976 50.16742;7.8850183 50.167248;7.885834 50.16692;7.8868203 50.166664;7.8873363 50.1662;7.8874683 50.165997;7.8874903 50.165844;7.889373 50.16371;7.8911195 50.16224;7.8915443 50.162445;7.8928356 50.16175;7.89571 50.16079;7.8961377 50.160694;7.896057 50.160313;7.8982677 50.15965;7.8987837 50.159363;7.8991475 50.159252;7.901525 50.158794;7.902791 50.158512;7.9037127 50.15824;7.904101 50.15804;7.9055433 50.157085;7.9059896 50.157375;7.9078364 50.15656;7.908417 50.15623;7.910789 50.15428;7.9114347 50.153843;7.9110937 50.15362;7.9114428 50.15306;7.9114246 50.152718;7.911298 50.152473;7.9121795 50.151913;7.9141765 50.15106;7.916278 50.150585;7.916641 50.150547;7.916958 50.150387;7.917185 50.149643;7.9171257 50.149;7.9187126 50.148758;7.9189496 50.148678;7.9195786 50.147816;7.9198785 50.147625;7.921791 50.146667;7.9221954 50.146534;7.923351 50.14647;7.923822 50.146374;7.925862 50.145763;7.927233 50.145454;7.9279184 50.145336;7.928688 50.145267;7.9291162 50.14527;7.9298663 50.14515;7.930145 50.145027;7.9312 50.14436;7.9315867 50.144196;7.932553 50.143898;7.9325967 50.143776;7.9323025 50.143116;7.9318357 50.142746;7.931492 50.142853;7.92923 50.142284;7.929275 50.14208;7.928273 50.14158;7.9273396 50.140945;7.9267664 50.140476;7.9260716 50.139763;7.926006 50.1395;7.9258995 50.13935;7.925666 50.139183;7.925553 50.137955;7.9256015 50.137253;7.9251366 50.13665;7.924242 50.136208;7.923797 50.13586;7.923095 50.13545;7.9223313 50.13472;7.9222074 50.134277;7.922231 50.134045;7.9227962 50.133118;7.922864 50.13272;7.9227204 50.13206;7.922399 50.132046;7.9221272 50.131348;7.922368 50.130867;7.922328 50.13058;7.922529 50.12962;7.922294 50.129604;7.9226694 50.128414;7.922799 50.128235;7.9229574 50.127357;7.9227223 50.127277;7.923051 50.126427;7.923121 50.125866;7.9229984 50.12529;7.923256 50.125168;7.92377 50.125057;7.924243 50.124897;7.9248657 50.124516;7.925105 50.124214;7.9252167 50.123695;7.9251747 50.123516;7.924838 50.122967;7.924389 50.122868;7.924374 50.12232;7.92414 50.12214;7.924013 50.121964;7.924441 50.121964;7.924533 50.121445;7.924343 50.121086;7.924407 50.121033;7.924813 50.121006;7.925374 50.12061;7.9255877 50.120556;7.9262576 50.119995;7.9265575 50.11982;7.9275036 50.11944;7.9276757 50.119263;7.9277625 50.11907;7.9277654 50.11881;7.9274464 50.11874;7.9274054 50.118423;7.92681 50.11815;7.9266825 50.11797;7.9259386 50.117443;7.925811 50.117252;7.925604 50.11665;7.924968 50.115986;7.924589 50.115383;7.92427 50.11515;7.924228 50.115025;7.924466 50.11479;7.924303 50.11397;7.924508 50.112583;7.924656 50.112324;7.925153 50.1119;7.925758 50.111134;7.9263425 50.110546;7.926429 50.110355;7.9263887 50.110188;7.9261317 50.110107;7.9254107 50.109444;7.925242 50.10921;7.92538533162609 50.1085004374946;7.936345 50.097624;8.031847 50.066458;8.089253 50.155982;8.03870013177485 50.2234513817683;8.038288 50.22336;8.037569 50.223152;8.037117 50.22308;8.0367365 50.223106;8.036172 50.22302;8.035857 50.2229;8.035587 50.222755;8.035298 50.222534;8.03514 50.22229;8.035145 50.221912;8.035351 50.22157;8.035332 50.22135;8.035132 50.22099;8.034805 50.220695;8.035136 50.220554;8.036245 50.220284;8.036951 50.22009;8.037269 50.21986;8.037456 50.219368;8.037482 50.218876;8.037169 50.21837;8.036791 50.217876;8.036055 50.217136;8.035135 50.216408;8.034911 50.216076;8.034847 50.215816;8.03464 50.215603;8.033403 50.215485;8.032186 50.21548;8.031644 50.215446;8.0307 50.21523;8.030182 50.215168;8.029209 50.215294;8.02869 50.21545;8.028192 50.215565;8.027807 50.215736;8.027351 50.21624;8.027011 50.216354;8.025905 50.21655;8.025588 50.21649;8.025188 50.21633;8.024167 50.216866;8.022743 50.217205;8.021502 50.217045;8.020401 50.216835;8.01903 50.216362;8.017965 50.217026;8.017624 50.217083;8.016564 50.21709;8.015886 50.217148;8.014734 50.2174;8.014349 50.21744;8.014035 50.217354;8.013722 50.21712;8.012022 50.217995;8.012467 50.218433;8.012534 50.218662;8.012712 50.218822;8.012889 50.21916;8.012907 50.219604;8.012879 50.22017;8.012761 50.220646;8.012622 50.220818;8.012283 50.22102;8.012146 50.221176;8.011979 50.222057;8.011841 50.222244;8.011413 50.22236;8.010491 50.222366;8.006211 50.223637;8.005804 50.22368;8.005196 50.22359;8.004993 50.223602;8.004041 50.224033;8.003477 50.22406;8.002684 50.224342;8.003551 50.225765;8.004241 50.22646;8.005003 50.22694;8.005584 50.22739;8.005763 50.22768;8.005849 50.228058;8.005846 50.228462;8.006047 50.22858;8.006092 50.22868;8.005953 50.228794;8.005186 50.22904;8.00489 50.22905;8.004305 50.22902;8.003495 50.228855;8.001761 50.22862;8.001196 50.228657;8.000789 50.228786;7.9999056 50.229202;7.9994736 50.229504;7.9991126 50.230286;7.9976096 50.23101;7.996974 50.23128;7.996454 50.231422;7.996604 50.231796;7.99536 50.232193;7.9951572 50.232193;7.9934936 50.231907;7.9933124 50.231934;7.9928117 50.23226;7.9930806 50.232307;7.9933496 50.232437;7.9943285 50.233124;7.9945064 50.233315;7.995337 50.234707;7.99477 50.234947;7.996351 50.236042;7.99601 50.236298;7.9955983 50.23647;7.9952602 50.236523;7.9939985 50.236485;7.9928284 50.236393;7.9911427 50.23609;7.989963 50.237816;7.9898667 50.237984;7.9898157 50.238346;7.9896817 50.238445;7.98941 50.238476',
'8.550971 51.103806;8.550681 51.10366;8.549868 51.103264;8.549201 51.10292;8.548594 51.102684;8.548525 51.102657;8.548189 51.10247;8.547393 51.101997;8.547285 51.10187;8.546466 51.10092;8.545813 51.100163;8.545661 51.099987;8.545555 51.09985;8.5447035 51.098854;8.544574 51.098698;8.544061 51.0981;8.543948 51.09806;8.54367 51.09797;8.543285 51.097866;8.542739 51.09682;8.542415 51.096516;8.542214 51.096344;8.542096 51.096245;8.541524 51.09613;8.541041 51.096046;8.540895 51.09602;8.540376 51.096107;8.539735 51.096214;8.538754 51.096397;8.537771 51.0966;8.537358 51.09668;8.536642 51.09679;8.531802 51.097626;8.531092 51.097595;8.531009 51.09759;8.529321 51.09773;8.529218 51.09768;8.527529 51.09685;8.527422 51.096775;8.526921 51.096394;8.526785 51.096287;8.52625 51.09585;8.526057 51.09555;8.525684 51.09498;8.525018 51.09395;8.524849 51.093693;8.524389 51.092983;8.524227 51.092735;8.5238495 51.092205;8.523645 51.09195;8.523385 51.09162;8.5233 51.09155;8.523 51.09129;8.522693 51.091026;8.52207 51.09049;8.521807 51.090714;8.521569 51.09092;8.521383 51.09086;8.521285 51.090824;8.521093 51.090755;8.520783 51.090878;8.52069 51.090916;8.52051 51.09093;8.520351 51.090874;8.51994 51.090775;8.519718 51.09089;8.518561 51.0908;8.51789 51.09075;8.517489 51.0909;8.517277 51.09098;8.515902 51.090267;8.515831 51.08999;8.515698 51.089817;8.515564 51.08964;8.515526 51.08936;8.51573 51.089054;8.515774 51.08899;8.5154915 51.088703;8.515173 51.08838;8.514838 51.088047;8.51475 51.08796;8.514523 51.087822;8.513812 51.087402;8.513272 51.087093;8.5131035 51.086998;8.512365 51.086575;8.512236 51.086548;8.512081 51.086514;8.511774 51.086502;8.510862 51.086464;8.510611 51.086452;8.510084 51.08635;8.5097685 51.086304;8.50946 51.086258;8.509258 51.086227;8.508423 51.08609;8.508315 51.08604;8.507849 51.08583;8.50778 51.085796;8.507724 51.08573;8.507054 51.084957;8.506776 51.0844;8.506701 51.08438;8.506467 51.084347;8.506101 51.084217;8.505872 51.08376;8.505861 51.083637;8.505742 51.08274;8.503949 51.081673;8.503856 51.08159;8.50302 51.080856;8.502631 51.080513;8.502532 51.080456;8.502201 51.080284;8.5018425 51.08006;8.501709 51.079956;8.501562 51.07984;8.501533 51.079662;8.501551 51.079487;8.501627 51.078804;8.501636 51.078728;8.50164 51.07837;8.501262 51.07757;8.501627 51.07727;8.501756 51.077164;8.501911 51.076756;8.502036 51.076393;8.502227 51.075844;8.50232 51.075577;8.502595 51.07478;8.502775 51.074635;8.503043 51.074444;8.503118 51.07439;8.5032 51.07436;8.503531 51.074245;8.503645 51.074196;8.503866 51.074097;8.503928 51.07403;8.503978 51.07393;8.504172 51.073505;8.504255 51.07344;8.504358 51.07336;8.504435 51.07334;8.504701 51.073273;8.504774 51.073254;8.50528 51.07347;8.505306 51.073135;8.50539 51.073048;8.50553 51.072968;8.5056095 51.072937;8.505733 51.07289;8.505717 51.07241;8.50664 51.07216;8.507329 51.07193;8.507452 51.071888;8.507933 51.071537;8.508409 51.071438;8.508496 51.07142;8.509344 51.07127;8.509494 51.071243;8.510059 51.07129;8.510178 51.071297;8.510391 51.07135;8.512099 51.070995;8.512512 51.07072;8.512928 51.070503;8.513195 51.070442;8.513553 51.070312;8.513727 51.070366;8.513849 51.07035;8.514466 51.070263;8.514533 51.07023;8.515482 51.069763;8.515592 51.06972;8.515763 51.069656;8.5169735 51.06921;8.517129 51.069153;8.517537 51.069054;8.517988 51.068943;8.518399 51.068867;8.519083 51.068745;8.519452 51.06883;8.519634 51.06887;8.519877 51.06866;8.520429 51.06825;8.520792 51.067978;8.520874 51.067917;8.520958 51.06789;8.521761 51.067627;8.52187 51.067528;8.521954 51.06746;8.522214 51.06722;8.52235 51.06709;8.522424 51.067024;8.522487 51.06697;8.523035 51.066006;8.523274 51.06558;8.52342 51.065434;8.5249605 51.0639;8.525685 51.06401;8.525967 51.06361;8.526201 51.0633;8.526259 51.063225;8.526407 51.063103;8.526851 51.062748;8.526996 51.062634;8.525012 51.06018;8.524685 51.060333;8.52312 51.05864;8.522997 51.058506;8.522973 51.05839;8.522939 51.058224;8.522955 51.05809;8.523084 51.05703;8.52315 51.056347;8.523134 51.056255;8.522942 51.055275;8.522884 51.055122;8.522896 51.055016;8.522926 51.054867;8.52304 51.05467;8.520415 51.05332;8.518874 51.052834;8.517057 51.052254;8.515458 51.051754;8.515377 51.051727;8.5148945 51.05161;8.514293 51.05146;8.513412 51.050682;8.513208 51.05054;8.511999 51.0497;8.511234 51.049175;8.51116 51.04906;8.510891 51.048748;8.510375 51.048153;8.510512 51.048157;8.510357 51.04798;8.50967 51.047215;8.508997 51.046513;8.508746 51.046215;8.508238 51.045605;8.5078745 51.045265;8.507736 51.04514;8.507308 51.044865;8.50721 51.04446;8.50715 51.044243;8.50702 51.043774;8.5069275 51.04368;8.506208 51.04293;8.505931 51.042778;8.505848 51.04274;8.505447 51.042557;8.505226 51.042343;8.504943 51.04205;8.504767 51.04187;8.504595 51.04167;8.504406 51.04143;8.503742 51.040596;8.503833 51.040554;8.504146 51.04044;8.504276 51.04039;8.5044365 51.04033;8.504567 51.040207;8.504853 51.039936;8.5049305 51.03983;8.505139 51.039543;8.50531 51.039284;8.50544 51.03908;8.505818 51.038548;8.505887 51.038486;8.505984 51.0384;8.507136 51.037354;8.507377 51.03712;8.5075655 51.036972;8.510665 51.038006;8.511611 51.03835;8.511866 51.038433;8.512619 51.038578;8.5129795 51.038647;8.51327 51.038677;8.51379 51.038704;8.513928 51.03871;8.514178 51.038765;8.514278 51.038868;8.514306 51.039265;8.51432 51.039474;8.51433 51.039608;8.51415 51.039993;8.514053 51.040195;8.514059 51.040295;8.5140705 51.04047;8.514068 51.04055;8.514163 51.040897;8.514184 51.040974;8.514254 51.04113;8.514288 51.041225;8.514292 51.0413;8.514401 51.041348;8.51492 51.041573;8.515582 51.0419;8.516843 51.042484;8.517185 51.04264;8.518769 51.04313;8.51957 51.043377;8.520323 51.04267;8.520791 51.042168;8.525392 51.037228;8.525643 51.036957;8.525969 51.034588;8.52605 51.034;8.527419 51.030617;8.5275955 51.030178;8.527695 51.03004;8.527793 51.029694;8.528028 51.029526;8.529502 51.02846;8.532343 51.026413;8.53248 51.026314;8.532868 51.026016;8.533539 51.025105;8.533594 51.02503;8.5339365 51.024643;8.534237 51.02422;8.535476 51.022427;8.536975 51.02025;8.53749 51.019505;8.538477 51.018074;8.536666 51.017624;8.536577 51.0176;8.535396 51.017242;8.53415 51.01663;8.533654 51.016384;8.533572 51.016342;8.533477 51.016293;8.533141 51.01611;8.532383 51.0157;8.530688 51.014774;8.530612 51.014732;8.529163 51.01394;8.528237 51.01343;8.527917 51.013287;8.526521 51.01263;8.525921 51.01235;8.524516 51.01162;8.523604 51.011288;8.523239 51.011158;8.523124 51.011116;8.521963 51.010696;8.521837 51.01067;8.521516 51.010605;8.520643 51.010513;8.5196085 51.01045;8.518448 51.010376;8.517676 51.01033;8.516273 51.010323;8.515681 51.01036;8.515252 51.01045;8.514969 51.010548;8.514807 51.010605;8.514435 51.010735;8.514354 51.01076;8.514445 51.01018;8.514668 51.00993;8.514711 51.009804;8.51461 51.009747;8.514529 51.0097;8.514243 51.009624;8.514103 51.009586;8.5139675 51.009678;8.513878 51.00981;8.513793 51.009796;8.513634 51.009773;8.51341 51.00967;8.513638 51.00936;8.513178 51.009243;8.513091 51.00922;8.513228 51.008602;8.5133 51.008354;8.513362 51.00818;8.513474 51.00785;8.513741 51.00759;8.514012 51.007328;8.514145 51.0072;8.514211 51.007133;8.514378 51.006878;8.514412 51.006798;8.514627 51.006474;8.514886 51.006084;8.51493 51.00576;8.515005 51.004887;8.514775 51.0048;8.513953 51.00449;8.512503 51.003944;8.512243 51.003834;8.511628 51.00357;8.511496 51.003475;8.511383 51.003365;8.511181 51.003147;8.510886 51.002827;8.510773 51.00276;8.510622 51.002674;8.510414 51.00257;8.510289 51.00252;8.508618 51.00188;8.508661 51.001743;8.508706 51.00164;8.507613 51.0013;8.507385 51.00123;8.5068035 51.000656;8.506709 51.000618;8.506621 51.00058;8.506235 51.000538;8.50591 51.000538;8.50566 51.00041;8.5053835 51.000263;8.504968 51.00004;8.504893 50.999996;8.504536 50.999763;8.503322 50.99914;8.503138 50.99919;8.502834 50.99904;8.502648 50.998966;8.502288 50.998783;8.502206 50.998775;8.50192 50.99875;8.501782 50.998737;8.501407 50.998398;8.501195 50.998207;8.500896 50.99794;8.500805 50.997852;8.500616 50.99768;8.50047 50.997543;8.500134 50.996964;8.499997 50.99682;8.499774 50.996582;8.499713 50.996513;8.499312 50.996113;8.499032 50.99583;8.498918 50.995716;8.498121 50.99471;8.497443 50.99385;8.497095 50.993282;8.496932 50.99291;8.496917 50.992702;8.496931 50.99258;8.496966 50.992294;8.497048 50.99228;8.497224 50.99225;8.497322 50.992226;8.497502 50.992184;8.497751 50.99169;8.497886 50.991283;8.497861 50.990936;8.49778 50.99071;8.497722 50.990547;8.497607 50.990387;8.4973545 50.99021;8.496893 50.990055;8.496744 50.990013;8.496494 50.98995;8.496412 50.989925;8.49609 50.989735;8.4955845 50.98934;8.495214 50.98911;8.494838 50.9889;8.493898 50.988373;8.492996 50.987873;8.492865 50.9878;8.49257 50.987637;8.492043 50.987377;8.491196 50.987064;8.490824 50.986927;8.490593 50.986843;8.489446 50.98651;8.488523 50.98619;8.488366 50.986134;8.487723 50.985847;8.487195 50.985573;8.486807 50.985302;8.486734 50.98524;8.485858 50.984512;8.484361 50.983444;8.483304 50.98279;8.482823 50.982464;8.481732 50.98168;8.481149 50.981236;8.479827 50.98023;8.477965 50.979042;8.477601 50.978798;8.475183 50.977005;8.474926 50.976788;8.47407269035259 50.9759452467606;8.488206 50.960687;8.657966 50.981559;8.662998 50.998469;8.65063695233645 51.0948536130243;8.649995 51.094837;8.649859 51.094833;8.647533 51.09499;8.647435 51.094994;8.645396 51.095367;8.645157 51.09541;8.644352 51.09556;8.643476 51.09569;8.641014 51.095963;8.640499 51.096035;8.63875 51.096287;8.638219 51.096363;8.637931 51.09643;8.637355 51.09653;8.634761 51.09697;8.634529 51.097004;8.634416 51.097023;8.63414 51.09709;8.633008 51.097366;8.632886 51.097397;8.631844 51.097652;8.631378 51.097775;8.630299 51.098064;8.62976 51.098206;8.629162 51.09838;8.628087 51.0987;8.627917 51.098763;8.627704 51.098804;8.625808 51.099174;8.624857 51.09935;8.624354 51.09944;8.623451 51.099636;8.623277 51.09967;8.6219 51.099968;8.621419 51.10007;8.621211 51.100117;8.61967 51.10018;8.619473 51.100193;8.617585 51.100266;8.617153 51.10028;8.616902 51.10029;8.616195 51.100323;8.613726 51.100426;8.611627 51.100513;8.61007 51.10057;8.608677 51.100628;8.608372 51.100647;8.607381 51.1007;8.607043 51.10072;8.606709 51.10076;8.6064205 51.1008;8.604646 51.101093;8.604571 51.101105;8.603842 51.101215;8.603732 51.10123;8.602665 51.10145;8.602576 51.10147;8.601676 51.101562;8.6 51.101746;8.599203 51.101833;8.597242 51.102036;8.596861 51.102074;8.596466 51.102127;8.596198 51.10215;8.595102 51.102272;8.594343 51.102345;8.594199 51.10236;8.59398 51.102383;8.593033 51.102375;8.592537 51.102367;8.591702 51.10226;8.590496 51.10211;8.590138 51.102066;8.58999 51.10206;8.589219 51.10206;8.587588 51.102055;8.585562 51.101963;8.584876 51.101963;8.583772 51.102047;8.582901 51.102116;8.58246 51.10215;8.580888 51.102276;8.580757 51.102287;8.579813 51.102375;8.57927 51.102417;8.579083 51.10243;8.578931 51.10244;8.578826 51.10243;8.577666 51.10231;8.576324 51.10215;8.575216 51.102005;8.574621 51.101925;8.573449 51.101852;8.573014 51.101833;8.572463 51.101788;8.571993 51.10174;8.571771 51.101723;8.569633 51.101665;8.569164 51.101654;8.568797 51.101643;8.568353 51.10162;8.568118 51.101612;8.565291 51.101463;8.565174 51.101456;8.5647335 51.101433;8.563969 51.101696;8.563598 51.101818;8.563318 51.10189;8.562856 51.10201;8.562478 51.10209;8.560996 51.102406;8.56033 51.10255;8.559562 51.102753;8.559321 51.10283;8.558849 51.10325;8.558643 51.10343;8.558458 51.10345;8.558336 51.103462;8.557989 51.10347;8.558037 51.103565;8.558113 51.10372;8.557972 51.103703;8.556753 51.103527;8.556485 51.1035;8.5564 51.103493;8.556242 51.103477;8.555608 51.103497;8.555462 51.1035;8.55509 51.10353;8.554481 51.10358;8.552341 51.10372;8.551708 51.103764;8.551309 51.103783;8.550971 51.103806',
'8.657966 50.981559;8.488206 50.960687;8.50363 50.915391;8.6286 50.851847;8.696988 50.901053;8.657966 50.981559',
'8.47407269035259 50.9759452467606;8.473956 50.97583;8.473633 50.975525;8.473525 50.97529;8.473297 50.97433;8.473309 50.97424;8.473363 50.973743;8.473642 50.97259;8.473777 50.972404;8.473976 50.972286;8.474162 50.97217;8.475414 50.971558;8.475915 50.971348;8.476656 50.97102;8.476839 50.97094;8.477204 50.970734;8.4774275 50.9705;8.477516 50.970406;8.477772 50.96951;8.477817 50.96942;8.477961 50.969135;8.478067 50.968952;8.4779215 50.96899;8.477379 50.96914;8.47619 50.969593;8.475732 50.969666;8.474035 50.96968;8.4727745 50.96965;8.469333 50.969437;8.468308 50.969444;8.46734 50.96945;8.466146 50.969463;8.466033 50.969467;8.465802 50.96943;8.465078 50.96911;8.464584 50.96889;8.464311 50.968796;8.464167 50.96873;8.463213 50.968502;8.463028 50.968426;8.462699 50.967754;8.462349 50.96758;8.461339 50.96734;8.460164 50.96709;8.459455 50.96689;8.458678 50.966553;8.458109 50.966183;8.45776 50.965546;8.457799 50.965298;8.457862 50.965168;8.458191 50.96497;8.459238 50.963882;8.459318 50.96336;8.459159 50.962677;8.459099 50.96238;8.459227 50.96209;8.459982 50.960693;8.460472 50.959618;8.461093 50.95922;8.461502 50.958996;8.461662 50.958755;8.461631 50.958614;8.460947 50.958065;8.460803 50.957947;8.460539 50.9575;8.460385 50.957153;8.460269 50.95669;8.460048 50.955814;8.45992 50.954845;8.460328 50.954796;8.460352 50.954258;8.460131 50.953697;8.459829 50.952488;8.459759 50.952095;8.459787 50.951893;8.460023 50.951683;8.46033 50.95153;8.460635 50.9515;8.461331 50.951527;8.461577 50.95147;8.462056 50.95086;8.462288 50.950317;8.462308 50.949875;8.462048 50.949574;8.461665 50.94929;8.461211 50.948902;8.461462 50.94873;8.460427 50.948067;8.458035 50.946716;8.457315 50.946358;8.457077 50.946213;8.456751 50.945942;8.456464 50.94558;8.455888 50.94581;8.455654 50.945114;8.455334 50.944656;8.454653 50.944298;8.453502 50.94391;8.452094 50.94337;8.452294 50.943127;8.451927 50.94287;8.45172 50.94265;8.451322 50.94272;8.450873 50.94221;8.450289 50.941784;8.449875 50.941338;8.449841 50.94081;8.449898 50.940395;8.450004 50.94016;8.449405 50.940006;8.44996 50.939423;8.451075 50.9385;8.451244 50.938057;8.451197 50.937843;8.45053 50.93689;8.4503975 50.93647;8.45059 50.93595;8.450575 50.935474;8.450535 50.935093;8.450549 50.933903;8.45061 50.933167;8.450812 50.932846;8.45117 50.932423;8.4517765 50.93191;8.45273 50.931656;8.453439 50.931404;8.454403 50.930897;8.454961 50.930443;8.455615 50.92973;8.456018 50.929104;8.456009 50.928913;8.455868 50.92872;8.455143 50.928055;8.454682 50.927643;8.454659 50.92752;8.454725 50.92731;8.456809 50.92405;8.458782 50.92095;8.459478 50.919903;8.458496 50.919945;8.458112 50.91984;8.457908 50.919624;8.457859 50.919563;8.457632 50.91918;8.456981 50.918095;8.456217 50.916615;8.456185 50.916508;8.452539 50.91673;8.45095 50.916843;8.449925 50.91704;8.449692 50.91699;8.44942 50.916744;8.448426 50.91624;8.448216 50.91619;8.447921 50.916122;8.446754 50.916126;8.445905 50.916172;8.444747 50.91633;8.443971 50.916386;8.44103 50.916286;8.439283 50.91615;8.438979 50.916203;8.438441 50.916443;8.437715 50.916695;8.436917 50.91681;8.436257 50.91686;8.435458 50.917023;8.435061 50.91724;8.433569 50.91819;8.433361 50.918213;8.433065 50.9181;8.43224 50.91762;8.431983 50.917427;8.430738 50.91659;8.430008 50.91608;8.428918 50.915157;8.428479 50.914673;8.427431 50.913246;8.426963 50.91276;8.425998 50.912018;8.425302 50.911568;8.422785 50.91033;8.422597 50.910263;8.421858 50.909992;8.421149 50.909885;8.420289 50.909725;8.419436 50.909473;8.41876 50.909126;8.418697 50.909065;8.418349 50.908855;8.417283 50.90824;8.415056 50.90713;8.413387 50.906338;8.411802 50.90556;8.410329 50.904804;8.4095745 50.90441;8.409139 50.904022;8.408031 50.90312;8.40754 50.902763;8.407022 50.902493;8.406304 50.90229;8.405731 50.902077;8.405533 50.90187;8.4053545 50.901234;8.405271 50.900566;8.405246 50.90033;8.405271 50.89974;8.405276 50.899662;8.405229 50.89946;8.404971 50.89929;8.404671 50.899055;8.402965 50.898083;8.401552 50.897236;8.399679 50.896168;8.397719 50.89494;8.396844 50.89433;8.396425 50.89407;8.396067 50.894054;8.395238 50.894028;8.394647 50.893967;8.393858 50.893906;8.39358 50.893852;8.393396 50.89377;8.393099 50.893692;8.39243 50.89351;8.391872 50.893356;8.3912945 50.89318;8.390795 50.892967;8.389968 50.8926;8.389599 50.89241;8.389289 50.892193;8.389007 50.892117;8.388392 50.89197;8.38831 50.8919;8.387903 50.891537;8.38745 50.89112;8.387242 50.89082;8.387095 50.890522;8.387129 50.890186;8.387264 50.889713;8.387448 50.8893;8.388288 50.88761;8.388961 50.88615;8.38899 50.885914;8.388861 50.88546;8.388738 50.88523;8.387885 50.88369;8.387418 50.88279;8.387337 50.8825;8.387349 50.88224;8.387489 50.88188;8.387718 50.88098;8.387891 50.880093;8.387894 50.879818;8.38723 50.878685;8.386464 50.877327;8.385747 50.87611;8.385622 50.875954;8.385531 50.87588;8.3852625 50.875816;8.384738 50.87577;8.383178 50.875706;8.381522 50.875675;8.380603 50.875614;8.378992 50.875465;8.378484 50.87543;8.377887 50.875336;8.3775835 50.87527;8.377113 50.875187;8.375768 50.87496;8.374647 50.874763;8.373228 50.874523;8.37207 50.874332;8.371708 50.87411;8.370598 50.87327;8.370173 50.87293;8.369423 50.872414;8.368793 50.871796;8.36854 50.87153;8.368348 50.871216;8.368299 50.87106;8.368258 50.870712;8.368198 50.870403;8.367915 50.86999;8.3676 50.8697;8.366984 50.869164;8.366664 50.868744;8.366597 50.86856;8.366605 50.868355;8.366709 50.868095;8.367277 50.86763;8.367793 50.867058;8.368427 50.866173;8.368845 50.865623;8.36909 50.865223;8.369242 50.864807;8.369291 50.864536;8.369239 50.864437;8.3690405 50.864246;8.36873 50.864025;8.367837 50.86341;8.366924 50.862812;8.366666 50.86269;8.365624 50.86243;8.363912 50.86202;8.362181 50.861618;8.360766 50.86126;8.360191 50.86109;8.35876 50.86072;8.35859 50.860718;8.358341 50.86081;8.35732 50.861324;8.355858 50.862026;8.355477 50.8622;8.355271 50.86234;8.355193 50.862396;8.353709 50.86438;8.353168 50.865097;8.352932 50.86532;8.352629 50.865387;8.3521185 50.8654;8.349272 50.865097;8.346973 50.864758;8.346018 50.864643;8.3454 50.864597;8.345248 50.864628;8.344271 50.864983;8.343536 50.865215;8.342761 50.865322;8.341985 50.86539;8.340624 50.865532;8.339924 50.865604;8.338547 50.86565;8.336665 50.86565;8.336144 50.865532;8.335311 50.865253;8.334736 50.865078;8.33441 50.864998;8.333348 50.864754;8.331445 50.86441;8.330309 50.86422;8.329073 50.864017;8.328878 50.863968;8.328497 50.863663;8.327888 50.86382;8.326171 50.8635;8.324767 50.863342;8.324093 50.86326;8.323623 50.86324;8.323134 50.86305;8.322195 50.862602;8.321495 50.86228;8.320428 50.86176;8.319738 50.861427;8.31946204816835 50.8613874094803;8.322886 50.841369;8.416253 50.764892;8.47551 50.791375;8.50363 50.915391;8.488206 50.960687;8.47407269035259 50.9759452467606',
'8.50363 50.915391;8.47551 50.791375;8.603771 50.714958;8.613529 50.72401;8.6286 50.851847;8.50363 50.915391',
'8.696988 50.901053;8.6286 50.851847;8.613529 50.72401;8.711891 50.737352;8.70436 50.899227;8.696988 50.901053',
'8.70436 50.899227;8.711891 50.737352;8.806276 50.727467;8.816336 50.742875;8.786708 50.867861;8.760777 50.896805;8.70436 50.899227',
'8.962351 50.90012;8.913384 50.773667;8.985631 50.718519;9.118197 50.800268;9.123255 50.834398;8.962351 50.90012',
'8.959508 50.905289;8.786708 50.867861;8.816336 50.742875;8.913384 50.773667;8.962351 50.90012;8.959508 50.905289',
'8.37594 50.438221;8.386445 50.343851;8.458874 50.288924;8.535472 50.364333;8.533358 50.387188;8.37594 50.438221',
'8.562675 50.463012;8.533358 50.387188;8.535472 50.364333;8.66096 50.282638;8.681984 50.290412;8.747391 50.380062;8.562675 50.463012',
'8.85197 50.446823;8.779318 50.420685;8.75755 50.386959;8.824393 50.307541;8.984013 50.27469;8.995719 50.313393;8.85197 50.446823',
'9.096597 50.529019;9.060648 50.510215;9.048325 50.35232;9.161275 50.329573;9.218551 50.420208;9.184688 50.493724;9.096597 50.529019',
'9.218551 50.420208;9.161275 50.329573;9.18499 50.287099;9.293798 50.265796;9.30749 50.268045;9.352729 50.399371;9.218551 50.420208',
'9.374062 50.459826;9.352874 50.399464;9.460649 50.338221;9.5006 50.368444;9.487121 50.43613;9.374062 50.459826',
'9.614383 50.393762;9.5006 50.368444;9.460649 50.338221;9.481863 50.233801;9.49639178305752 50.2295129788522;9.497259 50.23093;9.49754 50.231506;9.497662 50.231754;9.497837 50.23277;9.497923 50.233566;9.497741 50.23377;9.499044 50.23532;9.499999 50.236652;9.501268 50.238415;9.499999 50.239098;9.498808 50.23974;9.498605 50.23987;9.498544 50.239906;9.498407 50.240044;9.4982815 50.240166;9.498336 50.240257;9.499999 50.2419;9.500522 50.24242;9.501103 50.242996;9.501286 50.243095;9.501644 50.243095;9.502185 50.24302;9.502455 50.24296;9.502612 50.24286;9.50288 50.242496;9.503061 50.242325;9.505481 50.240623;9.506533 50.239796;9.507473 50.239014;9.50803 50.238087;9.509237 50.23668;9.509593 50.236317;9.509862 50.2361;9.513548 50.234367;9.514288 50.23406;9.514671 50.233944;9.515573 50.233753;9.517419 50.233498;9.518299 50.23341;9.519109 50.23335;9.520576 50.23333;9.52203287684781 50.2334439668981;9.624104 50.365209;9.614383 50.393762',
'9.731773 50.452666;9.615147 50.397521;9.614383 50.393762;9.624104 50.365209;9.70531477928461 50.283182651043;9.705358 50.28324;9.705663 50.28365;9.707294 50.285606;9.708721 50.287476;9.709615 50.288544;9.710151 50.28914;9.71053 50.28953;9.710994 50.289944;9.711202 50.290127;9.712324 50.290955;9.71295 50.291355;9.713423 50.29166;9.713491 50.29169;9.714523 50.292126;9.714952 50.292274;9.715292 50.292336;9.715988 50.292454;9.717026 50.292557;9.718312 50.29272;9.718829 50.292824;9.719404 50.29157;9.719762 50.29163;9.72001 50.291702;9.719825 50.29225;9.719346 50.29307;9.719161 50.29346;9.719115 50.293694;9.719131 50.29399;9.719377 50.29479;9.719534 50.29492;9.719695 50.294994;9.719778 50.295033;9.720275 50.294964;9.72073 50.294754;9.721024 50.294697;9.721517 50.29474;9.722175 50.294746;9.72276 50.29476;9.723189 50.2947;9.723727 50.294556;9.724157 50.294514;9.724838 50.294518;9.725514 50.29464;9.725692 50.294712;9.725915 50.294754;9.726997 50.294888;9.727677 50.29497;9.728261 50.295193;9.728776 50.295414;9.729561 50.29582;9.729808 50.296024;9.729961 50.296326;9.73007 50.296803;9.730206 50.297195;9.730358 50.29747;9.730785 50.297832;9.731238 50.29809;9.733052 50.298862;9.734565 50.29933;9.735061 50.299564;9.735274 50.3;9.735661 50.30078;9.736501 50.301254;9.737037 50.301556;9.739314 50.302765;9.738744 50.304176;9.738619 50.304485;9.738662 50.30473;9.738887 50.305008;9.73912 50.305172;9.739229 50.30525;9.7393265 50.305317;9.739401 50.30537;9.739607 50.30553;9.741035 50.30559;9.741116 50.30568;9.741214 50.305782;9.742068 50.306538;9.74281 50.307117;9.743482 50.30786;9.743729 50.30834;9.743795 50.308655;9.743678 50.308975;9.743503 50.309204;9.743404 50.309334;9.743738 50.30987;9.745931 50.310387;9.745745 50.310806;9.745741 50.311268;9.74592 50.311646;9.746233 50.312183;9.746635 50.31278;9.74686 50.31301;9.747467 50.313534;9.747708 50.314373;9.746938 50.314415;9.746801 50.314514;9.746706 50.315197;9.7466545 50.315964;9.74669 50.31689;9.746554 50.317047;9.746052 50.31732;9.745621 50.317463;9.744374 50.31778;9.744131 50.318436;9.743701 50.3196;9.743675 50.319946;9.743785 50.32041;9.744074 50.32095;9.744298 50.321167;9.744954 50.321514;9.745516 50.321865;9.745718 50.3222;9.746876 50.32187;9.746962 50.322334;9.74714 50.322754;9.747632 50.32345;9.748662 50.324657;9.748864 50.325047;9.747927 50.32545;9.746566 50.326035;9.746021 50.32645;9.74547 50.327114;9.745218 50.32762;9.744686 50.329014;9.744611 50.329693;9.74455 50.33111;9.744574 50.3313;9.74511 50.33208;9.745337 50.3325;9.745649 50.332985;9.745847 50.333565;9.746 50.3342;9.746042 50.33458;9.7460165 50.33497;9.745946 50.335358;9.745965 50.335735;9.746053 50.336025;9.746198 50.33635;9.746274 50.336662;9.746247 50.337067;9.746062 50.337543;9.746532 50.338257;9.746733 50.338604;9.746842 50.33901;9.746931 50.339214;9.7472925 50.33953;9.747473 50.33965;9.747624 50.3404;9.747576 50.340794;9.747459 50.341152;9.747229 50.341644;9.747046 50.341835;9.746796 50.341965;9.746499 50.34208;9.74618 50.34225;9.745954 50.342407;9.745609 50.34287;9.744398 50.344227;9.744031 50.344704;9.743892 50.345036;9.743844 50.345413;9.743886 50.34586;9.743818 50.346092;9.743587 50.34644;9.743243 50.346786;9.741031 50.348545;9.740528 50.34925;9.740254 50.34954;9.739479 50.349987;9.738347 50.349968;9.737984 50.35004;9.737506 50.350227;9.737028 50.350544;9.736442 50.350178;9.736226 50.350227;9.735971 50.35028;9.73508 50.35048;9.734332 50.350765;9.734234 50.350822;9.733944 50.350994;9.733443 50.351383;9.733305 50.35156;9.733189 50.351704;9.732982 50.35215;9.733139 50.352367;9.733591 50.352524;9.733339 50.353065;9.7334585 50.354916;9.733433 50.35518;9.733224 50.355858;9.733063 50.35623;9.733625 50.356697;9.735718 50.357967;9.735878 50.358067;9.737162 50.358852;9.737453 50.359188;9.737677 50.359364;9.740001 50.36051;9.74234 50.36178;9.743089 50.362183;9.7441 50.36351;9.745712 50.36562;9.746113 50.366146;9.744459 50.371574;9.746039 50.3733;9.746147 50.373444;9.746626 50.374004;9.746744 50.374157;9.746911 50.374344;9.7472725 50.37477;9.749915 50.37759;9.750246 50.378017;9.750285 50.378082;9.750284 50.379032;9.750296 50.379105;9.750336 50.37917;9.750725 50.379585;9.751499 50.380535;9.75163 50.38076;9.751695 50.380905;9.751835 50.38178;9.751865 50.38187;9.752136 50.382557;9.752246 50.382862;9.752581 50.38337;9.753457 50.384243;9.753522 50.38443;9.753606 50.38517;9.753917 50.385937;9.754074 50.386242;9.754389 50.38653;9.754545 50.38675;9.754612 50.38694;9.754779 50.388634;9.754817 50.389416;9.754656 50.389763;9.754518 50.39025;9.754374 50.39076;9.754389 50.391422;9.755882 50.395203;9.756011 50.395527;9.756381 50.397217;9.756457 50.397564;9.756579 50.397938;9.756891 50.39891;9.75713 50.399776;9.757222 50.399994;9.757284 50.40014;9.757565 50.400375;9.759469 50.40205;9.759078 50.402664;9.75893 50.402874;9.758895 50.402935;9.758437 50.403515;9.757451 50.40475;9.757766 50.40494;9.757764 50.405216;9.757514 50.405273;9.757288 50.405273;9.757174 50.405575;9.757212 50.40614;9.757121 50.406296;9.756047 50.407593;9.754631 50.408802;9.753759 50.409943;9.75346 50.41059;9.753278 50.410706;9.752824 50.410675;9.75253 50.410732;9.752097 50.410976;9.751777 50.411205;9.751167 50.411407;9.751227 50.41207;9.751337 50.412434;9.751405 50.41252;9.751448 50.412796;9.75144 50.41379;9.751301 50.413994;9.751257 50.414185;9.751238 50.41431;9.751389 50.414585;9.751672 50.414852;9.752241 50.415382;9.752645 50.415905;9.754137 50.41737;9.754412 50.41758;9.7546015 50.417458;9.755035 50.417343;9.755239 50.41735;9.755465 50.417362;9.755847 50.417477;9.756204 50.417713;9.756681 50.418232;9.757462 50.41965;9.758774 50.422173;9.758838 50.42252;9.75877 50.422806;9.758879 50.423126;9.759439 50.423965;9.759822 50.424282;9.760173 50.424545;9.76035076122409 50.4246656371098;9.731773 50.452666',
'8.535472 50.364333;8.458874 50.288924;8.45961 50.267185;8.582673 50.171026;8.66096 50.282638;8.535472 50.364333',
'8.75755 50.386959;8.747391 50.380062;8.681984 50.290412;8.784205 50.173121;8.841515 50.197616;8.824393 50.307541;8.75755 50.386959',
'8.824393 50.307541;8.841515 50.197616;8.979894 50.187849;8.984013 50.27469;8.824393 50.307541',
'9.048325 50.35232;8.995719 50.313393;8.984013 50.27469;8.979894 50.187849;8.983134 50.181942;9.044162 50.154522;9.155567 50.21127;9.18499 50.287099;9.161275 50.329573;9.048325 50.35232',
'9.18499 50.287099;9.155567 50.21127;9.22162623328118 50.1494800896828;9.221729 50.14955;9.221903 50.149292;9.222581 50.14893;9.223703 50.14849;9.224808 50.148075;9.22675880817112 50.1473564811713;9.293798 50.265796;9.18499 50.287099',
'9.352874 50.399464;9.352729 50.399371;9.30749 50.268045;9.387987 50.185781;9.481863 50.233801;9.460649 50.338221;9.352874 50.399464',
'9.624104 50.365209;9.52203287684781 50.2334439668981;9.52211 50.23345;9.523578 50.233665;9.524596 50.23392;9.525162 50.23412;9.525952 50.234234;9.527283 50.234318;9.528116 50.234154;9.528431 50.23414;9.532338 50.234383;9.532901 50.234455;9.533194 50.23445;9.533509 50.23441;9.53398 50.234104;9.534384 50.23397;9.535327 50.23339;9.53627 50.232864;9.536381 50.232693;9.536852 50.232403;9.537165 50.232082;9.53732 50.231705;9.537582 50.23046;9.537689 50.23;9.537688 50.22974;9.537593 50.229305;9.536972 50.227894;9.536946 50.227547;9.537056 50.22717;9.537301 50.22682;9.537569 50.226547;9.538018 50.226273;9.53894 50.225864;9.541723 50.224304;9.542173 50.224174;9.545293 50.22493;9.545791 50.225117;9.546744 50.225662;9.548512 50.226925;9.550077 50.227844;9.551139 50.22816;9.552179 50.22827;9.553464 50.22828;9.554477 50.22832;9.555381 50.2284;9.557007 50.228615;9.557981 50.22877;9.559201 50.229053;9.56128 50.229668;9.561822 50.229736;9.562996 50.229965;9.564105 50.23038;9.564604 50.230595;9.565668 50.230923;9.567523 50.231567;9.568313 50.231766;9.568967 50.23182;9.569847 50.231846;9.570794 50.231842;9.571313 50.231785;9.571876 50.23156;9.571952 50.231552;9.572112 50.231525;9.572236 50.231506;9.572597 50.231506;9.573319 50.23156;9.573862 50.231674;9.574315 50.231857;9.574585 50.232033;9.574791 50.232407;9.574838 50.23261;9.574951 50.23265;9.575267 50.232635;9.575919 50.23249;9.57621 50.2322;9.576391 50.232098;9.576638 50.232124;9.57684 50.231964;9.577017 50.23156;9.577262 50.231197;9.577438 50.230736;9.577459 50.230446;9.577525 50.2303;9.577705 50.230083;9.57851 50.2293;9.579115 50.22878;9.579427 50.22846;9.579673 50.22817;9.579962 50.227676;9.580162 50.227215;9.580313 50.226578;9.580255 50.225018;9.580405 50.223698;9.580489 50.223568;9.580646 50.223423;9.581119 50.223118;9.581564 50.222755;9.5819435 50.222202;9.582479 50.221565;9.582952 50.22131;9.583385 50.221756;9.583927 50.222168;9.584475 50.222485;9.586083 50.223217;9.586712 50.223114;9.587679 50.223064;9.59048 50.223183;9.591766 50.22328;9.592148 50.22338;9.592737 50.223694;9.594395 50.224773;9.5947895 50.22446;9.595074 50.224277;9.595311 50.224075;9.595541 50.223885;9.595692 50.223732;9.595761 50.22327;9.595813 50.222878;9.595847 50.222622;9.595929 50.22254;9.596429 50.222527;9.597038 50.222557;9.597143 50.22261;9.597285 50.22285;9.598839 50.22249;9.5996065 50.222385;9.599997 50.222366;9.600733 50.222336;9.601975 50.222237;9.602605 50.222145;9.603144 50.222095;9.604561 50.221558;9.604927 50.221905;9.605381 50.22225;9.60615 50.222668;9.606651 50.22287;9.606876 50.222855;9.607124 50.222767;9.6073 50.222763;9.607933 50.222874;9.608839 50.223087;9.609404 50.223263;9.609833 50.223362;9.61101 50.22359;9.6115055 50.223633;9.612218 50.223656;9.612653 50.223667;9.613196 50.223866;9.613738 50.223907;9.615059 50.223797;9.616243 50.22376;9.616491 50.223724;9.616824 50.223595;9.618449 50.223515;9.619692 50.2236;9.620303 50.22367;9.62082 50.223797;9.621297 50.22395;9.62182 50.22433;9.622022 50.224556;9.622094 50.224743;9.622049 50.22509;9.621964 50.225304;9.621071 50.226288;9.620463 50.226574;9.620642 50.226654;9.620783 50.22675;9.621051 50.22689;9.621509 50.22748;9.621985 50.227898;9.622372 50.228287;9.623067 50.228886;9.623325 50.229107;9.623601 50.22961;9.623738 50.22973;9.624146 50.230015;9.624242 50.230057;9.6245985 50.230213;9.625279 50.23043;9.626295 50.23063;9.627153 50.230698;9.627342 50.230595;9.627423 50.230553;9.627598 50.23064;9.6286 50.23114;9.629096 50.23128;9.629615 50.231396;9.629963 50.23153;9.630205 50.231625;9.631181 50.23217;9.63211 50.232773;9.632771 50.233364;9.633154 50.233635;9.633561 50.23382;9.633811 50.23401;9.634155 50.234356;9.634471 50.23457;9.635398 50.23496;9.635897 50.235115;9.636393 50.23514;9.6377 50.23506;9.638399 50.235;9.639346 50.234886;9.640111 50.234825;9.641013 50.234795;9.643135 50.23487;9.644984 50.234894;9.646225 50.235004;9.646632 50.23502;9.64769 50.234825;9.648658 50.234547;9.649333 50.234283;9.650883 50.233597;9.652028 50.233063;9.653534 50.232433;9.653692 50.23239;9.655654 50.232426;9.65622 50.232452;9.656784 50.23255;9.657281 50.23268;9.65841 50.23285;9.658998 50.232906;9.659313 50.232906;9.659539 50.23295;9.659947 50.233135;9.662116 50.23372;9.662569 50.233803;9.663383 50.23383;9.663787 50.23387;9.66397 50.234;9.664403 50.234516;9.665361 50.2359;9.665521 50.236217;9.665879 50.236595;9.666169 50.236973;9.666459 50.237247;9.666705 50.237434;9.666725 50.23778;9.666834 50.238243;9.666991 50.238506;9.667483 50.239082;9.667771 50.23949;9.667703 50.239574;9.667022 50.23998;9.666055 50.240486;9.665655 50.24067;9.663111 50.24159;9.661916 50.241898;9.660476 50.242336;9.658655 50.243008;9.658314 50.242706;9.653205 50.24411;9.652846 50.244286;9.652262 50.244736;9.651659 50.245274;9.6513 50.24546;9.650963 50.245537;9.650469 50.245754;9.649639 50.246235;9.649055 50.246426;9.648038 50.246513;9.647251 50.246704;9.646553 50.246983;9.6456995 50.24723;9.642643 50.247597;9.640584 50.247845;9.639753 50.248077;9.639303 50.248398;9.639079 50.248657;9.63888 50.24915;9.637785 50.25031;9.637317 50.250862;9.637238 50.25127;9.637166 50.25164;9.637283 50.252148;9.637556 50.25245;9.637942 50.252678;9.639186 50.25325;9.64351 50.255043;9.643214 50.255394;9.643002 50.25564;9.642505 50.25623;9.642171 50.256596;9.642163 50.256756;9.642151 50.257;9.642401 50.25713;9.642716 50.257397;9.642831 50.257645;9.643193 50.257828;9.643869 50.25774;9.644661 50.257793;9.645274 50.25797;9.645725 50.2582;9.645863 50.25846;9.645797 50.258736;9.645639 50.258892;9.645596 50.25909;9.645979 50.25909;9.646341 50.259132;9.646681 50.259247;9.646614 50.259552;9.646729 50.25975;9.646754 50.259926;9.646573 50.26004;9.646439 50.26007;9.646167 50.26006;9.6462145 50.260216;9.64635 50.26032;9.646667 50.26036;9.646825 50.2605;9.646849 50.26059;9.646805 50.260704;9.6466255 50.260807;9.646583 50.26092;9.646652 50.261013;9.646832 50.261055;9.647174 50.2613;9.6472435 50.26162;9.647448 50.261806;9.647788 50.261818;9.648283 50.261658;9.648554 50.261772;9.648759 50.262016;9.64876 50.262234;9.648471 50.262596;9.648337 50.26287;9.648304 50.263332;9.648318 50.263412;9.648325 50.263447;9.648346 50.26371;9.647811 50.26455;9.648016 50.264694;9.648175 50.26491;9.648221 50.265083;9.648378 50.2651;9.648625 50.264996;9.649033 50.265022;9.649237 50.265312;9.649194 50.265556;9.64906 50.265743;9.648746 50.26573;9.648634 50.26582;9.648679 50.266006;9.648998 50.266308;9.649292 50.26641;9.6496525 50.266376;9.64988 50.266434;9.650967 50.267113;9.650992 50.267212;9.650631 50.267487;9.650677 50.26756;9.651288 50.267773;9.651853 50.267918;9.652231 50.26875;9.652382 50.269085;9.652866 50.27005;9.653214 50.270325;9.653702 50.270714;9.654359 50.271233;9.654524 50.27136;9.65511 50.271603;9.655968 50.271717;9.657029 50.271786;9.65872 50.27169;9.659485 50.271515;9.660116 50.271297;9.661535 50.27103;9.66282 50.270897;9.663811 50.270893;9.664762 50.271034;9.665407 50.27133;9.665721 50.27158;9.666035 50.271782;9.66644 50.271973;9.667184 50.272278;9.668801 50.27286;9.669678 50.27324;9.670511 50.273445;9.671186 50.27355;9.671771 50.273754;9.672913 50.274315;9.673074 50.27439;9.673659 50.274757;9.674222 50.275005;9.676109 50.275677;9.676807 50.275967;9.678582 50.27681;9.679368 50.277103;9.680403 50.277554;9.681033 50.2779;9.681502 50.27835;9.681659 50.278423;9.683054 50.278645;9.683372 50.278618;9.684096 50.27837;9.686131 50.277805;9.686559 50.27775;9.686739 50.27774;9.688253 50.277683;9.689425 50.2777;9.691408 50.277794;9.692023 50.277893;9.692235 50.277943;9.693707 50.27828;9.694224 50.278496;9.694493 50.27867;9.694963 50.27909;9.695637 50.27937;9.696133 50.279457;9.696943 50.27952;9.698138 50.27965;9.699998 50.279934;9.700281 50.279976;9.702059 50.280285;9.702576 50.280434;9.70352 50.28084;9.703699 50.280987;9.704324 50.281868;9.70531477928461 50.283182651043;9.624104 50.365209',
'8.45961 50.267185;8.388222 50.193855;8.43851 50.109856;8.580289 50.113191;8.582673 50.171026;8.45961 50.267185',
'8.681984 50.290412;8.66096 50.282638;8.582673 50.171026;8.580289 50.113191;8.599676 50.080198;8.760987 50.098746;8.784205 50.173121;8.681984 50.290412',
'8.841515 50.197616;8.784205 50.173121;8.760987 50.098746;8.831083 50.010288;8.908745 50.043518;8.983134 50.181942;8.979894 50.187849;8.841515 50.197616',
'9.155567 50.21127;9.044162 50.154522;9.06702756029236 50.1176194926144;9.06736 50.11774;9.070618 50.119144;9.071332 50.119442;9.071546 50.119442;9.073095 50.118416;9.074985 50.11712;9.075285 50.116966;9.076465 50.116554;9.077036 50.116035;9.077208 50.115963;9.07742 50.115997;9.077689 50.116043;9.078246 50.116013;9.078598 50.116005;9.08024 50.11618;9.082694 50.116497;9.085253 50.11698;9.087715 50.117;9.08903 50.116993;9.089432 50.117165;9.090908 50.117992;9.091877 50.11903;9.092117 50.118896;9.092148 50.118965;9.092759 50.120003;9.092878 50.12022;9.093536 50.12023;9.094514 50.120304;9.095922 50.12281;9.097158 50.124836;9.09731 50.124935;9.097666 50.125164;9.097966 50.12526;9.098052 50.125286;9.098462 50.125244;9.099629 50.125187;9.100259 50.125183;9.10063 50.125187;9.101318 50.125065;9.102132 50.12504;9.102689 50.125046;9.10374 50.12518;9.104775 50.125286;9.105292 50.12535;9.106327 50.125378;9.10635 50.12527;9.106666 50.125275;9.10972 50.12592;9.109714 50.126144;9.109674 50.12623;9.110007 50.126232;9.111758 50.126503;9.112518 50.126534;9.11357 50.12657;9.1135025 50.126442;9.113614 50.126335;9.116077 50.1264;9.116388 50.12651;9.1165695 50.12669;9.116563 50.126858;9.117284 50.12688;9.118248 50.126877;9.119103 50.126804;9.119094 50.12645;9.120362 50.12614;9.1209135 50.126328;9.122099 50.125652;9.121964 50.125435;9.1225815 50.125057;9.126044 50.12313;9.127854 50.122364;9.128793 50.121956;9.129164 50.12188;9.129617 50.121563;9.131138 50.120876;9.13284 50.12;9.134324 50.11922;9.136446 50.1182;9.137326 50.117874;9.1376705 50.117825;9.138098 50.11775;9.138549 50.11755;9.138894 50.11715;9.139057 50.11664;9.139234 50.116295;9.139803 50.11579;9.140475 50.11556;9.141027 50.115467;9.141906 50.115093;9.142397 50.11473;9.142919 50.114643;9.14354 50.11433;9.144261 50.114326;9.144787 50.114082;9.14513 50.11409;9.145605 50.11429;9.148331 50.11545;9.149809 50.115833;9.151203 50.11635;9.153383 50.1178;9.153863 50.117844;9.1538725 50.11621;9.153815 50.11466;9.153985 50.11453;9.15535 50.11338;9.155978 50.112827;9.156209 50.112484;9.156292 50.11214;9.156269 50.1117;9.156049 50.111275;9.155546 50.110706;9.155248 50.110157;9.154809 50.10869;9.1543255 50.107635;9.154089 50.107197;9.153023 50.10662;9.152916 50.10632;9.152803 50.106003;9.15228 50.105507;9.152049 50.105694;9.150586 50.105057;9.15005 50.1044;9.149222 50.103416;9.148555 50.10262;9.148031 50.102245;9.147848 50.10209;9.147236 50.101276;9.144885 50.0989;9.143316 50.09688;9.142685 50.09634;9.142139 50.095554;9.142073 50.09546;9.142427 50.095333;9.14318 50.0949;9.143523 50.094547;9.143738 50.09417;9.143745 50.093895;9.144292 50.092876;9.143707 50.092632;9.142528 50.09256;9.141657 50.0925;9.141661 50.092392;9.142236 50.092003;9.142376 50.091656;9.1423645 50.09075;9.143415 50.090908;9.144095 50.09106;9.145695 50.091377;9.145985 50.090904;9.14626 50.090454;9.147081 50.090515;9.147413 50.0899;9.149578 50.090843;9.150633 50.091213;9.150851 50.09136;9.151731 50.091957;9.152074 50.0922;9.152354 50.092377;9.1528225 50.092674;9.153602 50.09322;9.154175 50.09388;9.154375 50.09467;9.154816 50.095097;9.156348 50.095234;9.156758 50.09512;9.157428 50.094997;9.158411 50.094902;9.15966 50.095207;9.159601 50.09538;9.158851 50.095753;9.158432 50.096115;9.157968 50.09652;9.157662 50.096863;9.157259 50.09736;9.157094 50.097904;9.15697 50.09839;9.157165 50.098785;9.157797 50.09922;9.158158 50.099342;9.158717 50.099567;9.159106 50.0998;9.159321 50.1;9.159976 50.1006;9.15994 50.10095;9.160072 50.101154;9.160526 50.10156;9.160607 50.102367;9.160761 50.102604;9.161022 50.102795;9.1613455 50.1029;9.161559 50.103035;9.161653 50.103252;9.161745 50.103447;9.161975 50.103554;9.162581 50.103893;9.162758 50.10422;9.162636 50.104427;9.162683 50.104664;9.163425 50.105644;9.164348 50.10572;9.164821 50.105827;9.165102 50.106003;9.16551 50.106453;9.165765 50.1067;9.165921 50.106976;9.165896 50.10725;9.16581 50.107513;9.165836 50.10772;9.165982 50.10791;9.166154 50.108063;9.166283 50.1086;9.1665 50.108845;9.167488 50.1098;9.168581 50.110374;9.168856 50.11056;9.168945 50.110622;9.169431 50.111115;9.16961 50.111298;9.16987 50.111504;9.170124 50.11164;9.170898 50.111816;9.171198 50.112095;9.171712 50.11237;9.172184 50.112766;9.172507 50.11289;9.172871 50.113068;9.173235 50.113274;9.173385 50.113438;9.173879 50.113537;9.174243 50.11366;9.1745 50.11381;9.174628 50.11399;9.174651 50.11418;9.174522 50.114456;9.174272 50.11463;9.173861 50.11492;9.173302 50.115692;9.173152 50.115955;9.17311 50.11616;9.173261 50.11707;9.173218 50.11756;9.173326 50.11784;9.173883 50.118496;9.17392 50.11858;9.17429 50.11946;9.175234 50.119514;9.176221 50.11965;9.176628 50.11979;9.177573 50.120544;9.178067 50.120808;9.178559 50.121;9.179824 50.121162;9.180135 50.121334;9.181368 50.122013;9.181818 50.122467;9.182375 50.12274;9.18333 50.123062;9.184434 50.12343;9.185292 50.123814;9.186192 50.123936;9.186535 50.124035;9.186986 50.124348;9.18821 50.125298;9.188551 50.12553;9.188977 50.125748;9.189359 50.126125;9.189775 50.126534;9.189908 50.126694;9.19004 50.126846;9.190226 50.127068;9.190355 50.127342;9.19042 50.127647;9.190377 50.12806;9.190314 50.12823;9.190099 50.12881;9.189867 50.129116;9.189221 50.129704;9.189006 50.130096;9.188782 50.130817;9.1886 50.131107;9.188127 50.131413;9.186605 50.132168;9.186042 50.132484;9.185905 50.132584;9.185528 50.13291;9.185343 50.133213;9.185296 50.133583;9.185318 50.134132;9.185307 50.13451;9.185209 50.1347;9.184809 50.13509;9.184253 50.13542;9.183965 50.13574;9.183848 50.13607;9.183893 50.136406;9.18392 50.136765;9.184044 50.137196;9.182949 50.137325;9.183062 50.137997;9.183911 50.13798;9.1848345 50.138084;9.185734 50.13837;9.186305 50.13858;9.186996 50.138603;9.187847 50.13866;9.18872 50.13866;9.189491 50.138935;9.190302 50.139038;9.192101 50.139023;9.193 50.13899;9.193593 50.138985;9.1940155 50.139122;9.194485 50.13947;9.195478 50.140327;9.19622 50.139996;9.196621 50.14031;9.1970215 50.14052;9.197387 50.14065;9.19811 50.14078;9.19896 50.140854;9.19985 50.140823;9.200198 50.14085;9.200162 50.141167;9.20096 50.14109;9.202014 50.14115;9.202623 50.141266;9.20274 50.14104;9.203091 50.14109;9.203213 50.141354;9.203447 50.14162;9.203775 50.141792;9.204226 50.141945;9.204255 50.14222;9.204565 50.1424;9.204787 50.14251;9.207727 50.142666;9.207788 50.14251;9.21043 50.14268;9.210815 50.142815;9.211051 50.142998;9.21123 50.14325;9.211369 50.14355;9.211529 50.144463;9.211775 50.14563;9.212002 50.1468;9.212957 50.146774;9.213374 50.146767;9.215023 50.146786;9.217292 50.14676;9.21876 50.146645;9.219111 50.14667;9.22 50.147358;9.220323 50.14777;9.220659 50.14803;9.220939 50.1486;9.221019 50.149067;9.22162623328118 50.1494800896828;9.155567 50.21127',
'9.30749 50.268045;9.293798 50.265796;9.22675880817112 50.1473564811713;9.2271185 50.147224;9.227359 50.147217;9.227912 50.147316;9.228301 50.147346;9.228802 50.14735;9.231411 50.147137;9.233054 50.14664;9.233829 50.146454;9.234666 50.146286;9.235262 50.146183;9.235764 50.14618;9.236805 50.145683;9.237987 50.145073;9.239071 50.144585;9.239579 50.144318;9.240902 50.143684;9.24124 50.14346;9.241672 50.143276;9.242178 50.143185;9.243031 50.14303;9.243817 50.14279;9.2440815 50.142708;9.245995 50.142162;9.247355 50.141735;9.248609 50.141373;9.250634 50.140778;9.2520685 50.139732;9.252709 50.139263;9.253151 50.139133;9.257106 50.1387;9.2590685 50.138493;9.259659 50.13851;9.260116 50.138657;9.261996 50.138935;9.263905 50.13914;9.26459 50.139156;9.266026 50.139294;9.266475 50.1394;9.267805 50.13999;9.268338 50.14036;9.268835 50.14076;9.269454 50.14139;9.26965 50.14154;9.270122 50.14178;9.2707 50.141987;9.273293 50.142517;9.273892 50.142586;9.275585 50.14256;9.275824 50.14253;9.276268 50.142464;9.27653 50.142426;9.277324 50.142258;9.278825 50.14187;9.279593 50.141705;9.2806635 50.141567;9.281521 50.141586;9.281722 50.141594;9.283024 50.141624;9.283861 50.141598;9.285768 50.14143;9.288446 50.140633;9.290504 50.140083;9.293782 50.13927;9.295516 50.1382;9.29736 50.137276;9.297873 50.13704;9.299999 50.136433;9.30038 50.136326;9.301966 50.135777;9.302651 50.1355;9.303958 50.13524;9.304558 50.135006;9.305908 50.13433;9.307235 50.133617;9.307793 50.13337;9.308072 50.133327;9.312102 50.134274;9.31356 50.134712;9.314975 50.13526;9.316325 50.135742;9.317248 50.1361;9.317698 50.136307;9.320293 50.138134;9.320851 50.1386;9.321561 50.13911;9.321655 50.13917;9.32246 50.139687;9.323745 50.14036;9.325184 50.140568;9.325377 50.1406;9.327197 50.140865;9.327541 50.140865;9.328484 50.14069;9.330089 50.140247;9.330861 50.140068;9.332211 50.139217;9.332502 50.13904;9.332995 50.138805;9.336112 50.13682;9.336282 50.136627;9.336878 50.13575;9.338216 50.13366;9.338813 50.133026;9.339773 50.132103;9.340179 50.13184;9.340714 50.13159;9.3412485 50.131454;9.342404 50.131245;9.345249 50.131115;9.347089 50.131016;9.347312 50.130978;9.347604 50.13093;9.350856 50.130512;9.351411 50.13048;9.351903 50.13051;9.352805 50.130657;9.355181 50.130985;9.355995 50.131023;9.361026 50.131138;9.361561 50.131107;9.362609 50.13094;9.364043 50.130814;9.364535 50.130787;9.364769 50.1308;9.365992 50.131042;9.368969 50.13145;9.36944 50.131462;9.370467 50.131363;9.372242 50.131084;9.373396 50.130848;9.373536 50.130806;9.37415915943197 50.1306320557683;9.387987 50.185781;9.30749 50.268045',
'9.481863 50.233801;9.387987 50.185781;9.37415915943197 50.1306320557683;9.374274 50.1306;9.375921 50.130337;9.375861 50.130146;9.375682 50.129578;9.375594 50.128975;9.376107 50.12885;9.37593 50.12726;9.375818 50.126007;9.377394 50.124302;9.378226 50.12364;9.37876 50.123116;9.379356 50.12244;9.380784 50.12108;9.38059 50.120804;9.382534 50.119244;9.382811 50.118946;9.384255 50.11643;9.38462 50.11551;9.384932 50.11472;9.38546 50.11322;9.385717 50.112286;9.386274 50.112343;9.386693 50.110664;9.386798 50.11038;9.387468 50.10949;9.391544 50.104084;9.391695 50.10384;9.391546 50.103634;9.392629 50.10216;9.392823 50.10187;9.393548 50.1;9.393986 50.09886;9.394576 50.097523;9.395395 50.09648;9.398837 50.09267;9.399998 50.09159;9.401731 50.089985;9.404128 50.088196;9.404821 50.087746;9.406397 50.086983;9.408144 50.086205;9.410537 50.084938;9.412797 50.083584;9.413382 50.0835;9.415764 50.083622;9.41662 50.083828;9.417787 50.08418;9.420934 50.084766;9.421032 50.0848;9.421543 50.084984;9.421831 50.085087;9.423 50.08538;9.424035 50.0855;9.42606 50.085503;9.427591 50.08545;9.428402 50.085163;9.429168 50.08482;9.430069 50.084763;9.435828 50.08501;9.43628 50.08513;9.436681 50.08545;9.437309 50.085796;9.439148 50.086933;9.440767 50.087082;9.44162 50.087345;9.442832 50.08793;9.444488 50.089207;9.44542 50.089764;9.445611 50.089878;9.446825 50.090027;9.448039 50.09003;9.450288 50.09038;9.452539 50.090275;9.456231 50.089935;9.4587965 50.08974;9.460642 50.08975;9.461537 50.090557;9.461991 50.090836;9.462258 50.090996;9.462334 50.091;9.463515 50.09106;9.464035 50.090992;9.464189 50.090973;9.46434 50.09097;9.464531 50.091084;9.465293 50.091557;9.467095 50.0921;9.472248 50.09257;9.475106 50.093468;9.478261 50.09478;9.479467 50.095055;9.481608 50.09532;9.481962 50.09539;9.482618 50.095436;9.483571 50.095505;9.484203 50.095406;9.485709 50.095036;9.488167 50.094357;9.48911 50.094353;9.489868 50.094433;9.490884 50.094524;9.492842 50.094635;9.495588 50.094826;9.497133 50.09521;9.497517 50.09543;9.497885 50.096348;9.498719 50.09721;9.500603 50.09741;9.507498 50.098217;9.51301 50.09886;9.5130415 50.09911;9.513208 50.099125;9.513206 50.09923;9.513146 50.09936;9.513017 50.099396;9.512975 50.09961;9.513692 50.09983;9.514298 50.10011;9.514773 50.100388;9.516264 50.10214;9.516931 50.103;9.517542 50.103863;9.518016 50.10463;9.519184 50.10576;9.51956 50.106117;9.518209 50.10771;9.51844 50.10891;9.518693 50.110504;9.519076 50.1117;9.519566 50.113125;9.518036 50.115738;9.517522 50.116547;9.513093 50.12322;9.512744 50.123886;9.512249 50.125233;9.512014 50.12587;9.5106 50.13044;9.509834 50.132923;9.508795 50.136677;9.508536 50.138313;9.508509 50.13849;9.508144 50.141155;9.508227 50.142326;9.508204 50.14304;9.508073 50.143673;9.507491 50.14538;9.508112 50.146038;9.508816 50.146862;9.509308 50.147278;9.509991 50.147766;9.510485 50.14803;9.51113 50.148224;9.512394 50.148487;9.513809 50.14864;9.515373 50.14876;9.516403 50.148735;9.517238 50.148666;9.517776 50.148678;9.51814 50.148724;9.518912 50.148846;9.519275 50.148956;9.519983 50.149426;9.521332 50.149837;9.521782 50.150017;9.522465 50.150383;9.522595 50.150826;9.522978 50.151485;9.523321 50.151928;9.524863 50.15329;9.526082 50.15479;9.526809 50.155754;9.527322 50.155766;9.528693 50.15722;9.528628 50.157597;9.528861 50.15801;9.531106 50.160683;9.531193 50.160786;9.530158 50.163383;9.529425 50.165295;9.529359 50.165707;9.52839 50.16803;9.527997 50.167957;9.527468 50.167892;9.52554 50.167507;9.524383 50.167328;9.520222 50.167366;9.519085 50.16735;9.517821 50.167408;9.516641 50.16753;9.505231 50.16919;9.504595 50.16974;9.50317 50.17097;9.501314 50.172573;9.501401 50.172665;9.501283 50.172867;9.501044 50.17281;9.499998 50.17371;9.499058 50.174522;9.499192 50.1746;9.499225 50.174706;9.498965 50.174812;9.498795 50.174755;9.498727 50.17485;9.498245 50.175575;9.498357 50.177032;9.498877 50.178127;9.498993 50.178356;9.499655 50.179634;9.499998 50.180252;9.50115 50.18233;9.501255 50.18295;9.501137 50.185726;9.501071 50.18726;9.501008 50.187935;9.50105 50.188076;9.50129 50.188057;9.501379 50.188248;9.501218 50.188347;9.501458 50.188507;9.501549 50.188515;9.501914 50.188553;9.501969 50.188454;9.502045 50.188385;9.50234 50.188435;9.502349 50.18861;9.50266 50.18864;9.502377 50.190083;9.501314 50.189934;9.501212 50.190044;9.5009165 50.18999;9.500909 50.189877;9.500704 50.18985;9.500767 50.19033;9.500834 50.190605;9.50103 50.19071;9.501103 50.190804;9.501026 50.190945;9.500918 50.19094;9.501024 50.191505;9.501126 50.191494;9.501217 50.19152;9.501327 50.191628;9.501176 50.191746;9.501075 50.191772;9.501255 50.192722;9.501384 50.193054;9.501586 50.193195;9.501689 50.19325;9.501869 50.19317;9.5020895 50.193275;9.501971 50.193394;9.502391 50.19362;9.503249 50.193455;9.504726 50.19414;9.506055 50.194664;9.506178 50.1946;9.50629 50.1946;9.506454 50.19471;9.506402 50.1948;9.507164 50.19508;9.508133 50.195435;9.510109 50.194252;9.510452 50.194103;9.51249 50.194008;9.512677 50.193962;9.512832 50.193924;9.513477 50.193676;9.514288 50.1941;9.514976 50.19446;9.515382 50.19479;9.515553 50.195038;9.51564 50.195217;9.515616 50.19524;9.515638 50.195312;9.515379 50.196014;9.515337 50.196358;9.5154 50.196938;9.515668 50.198067;9.515845 50.19882;9.516099 50.19954;9.516137 50.199646;9.515182 50.2;9.511663 50.201298;9.510616 50.201523;9.510493 50.20166;9.509229 50.20348;9.507178 50.207108;9.506233 50.207256;9.50504 50.207504;9.504613 50.20784;9.503873 50.208275;9.503537 50.208538;9.503404 50.20877;9.502191 50.21201;9.5021925 50.212185;9.505414 50.214424;9.503374 50.21851;9.503149 50.21887;9.50313 50.21927;9.503021 50.21969;9.502581 50.220676;9.501891 50.221836;9.501645 50.2221;9.501174 50.22242;9.5 50.222935;9.498881 50.223423;9.4981985 50.223705;9.497903 50.223877;9.497134 50.2245;9.496589 50.22479;9.49491 50.22658;9.494841 50.22687;9.494952 50.22722;9.495423 50.22793;9.49639178305752 50.2295129788522;9.481863 50.233801',
'8.580289 50.113191;8.43851 50.109856;8.430245 50.098136;8.428374 49.88936;8.596686 50.052906;8.599676 50.080198;8.580289 50.113191',
'8.760987 50.098746;8.599676 50.080198;8.596686 50.052906;8.698188 49.889303;8.730033 49.892763;8.811278 49.943283;8.831083 50.010288;8.760987 50.098746',
'8.929961 50.026254;8.973474 49.919104;9.02540299560584 49.9404664607466;9.025365 49.94089;9.025513 49.94203;9.025556 49.9429;9.025376 49.94366;9.0254345 49.945663;9.02489 49.945755;9.024182 49.945885;9.0222645 49.946224;9.01901 49.946804;9.019988 49.948006;9.020661 49.94883;9.021288 49.949577;9.021618 49.94997;9.021815 49.95004;9.022339 49.950294;9.022645 49.95052;9.022993 49.950912;9.024756 49.953106;9.025453 49.953896;9.026736 49.95516;9.025994 49.955593;9.025621 49.955975;9.025026 49.95696;9.024039 49.95887;9.024009 49.959;9.023726 49.96022;9.023704 49.960556;9.023789 49.9615;9.023739 49.96348;9.023534 49.964897;9.023291 49.965656;9.022481 49.967216;9.02197 49.967945;9.021938 49.96802;9.021756 49.96845;9.021667 49.968945;9.021618 49.969875;9.021308 49.971252;9.020913 49.972363;9.020195 49.974033;9.019922 49.974243;9.019352 49.974407;9.019134 49.97447;9.019143 49.97455;9.019192 49.97572;9.019193 49.97638;9.01921 49.97675;9.018862 49.977436;9.018638 49.977844;9.018727 49.978252;9.018967 49.978504;9.019383 49.978573;9.019798 49.978603;9.019993 49.978844;9.020066 49.98155;9.020071 49.981792;9.020134 49.982147;9.020506 49.982876;9.020612 49.983482;9.020459 49.984085;9.020062 49.984917;9.020106 49.98531;9.020013 49.985786;9.019751 49.986378;9.019443 49.986923;9.019027 49.987164;9.017912 49.987556;9.017428 49.987797;9.01686 49.98816;9.015852 49.989185;9.015232 49.98978;9.01493 49.99007;9.014576 49.990532;9.014405 49.99076;9.014262 49.99106;9.014139 49.99116;9.014258 49.9913;9.01441 49.991398;9.014576 49.991512;9.014956 49.991745;9.016072 49.99236;9.016199 49.992428;9.016376 49.992527;9.016457 49.992577;9.017448 49.99316;9.020178 49.994698;9.02038 49.994812;9.021139 49.995358;9.021989 49.996017;9.022947 49.996902;9.02459 49.996174;9.029633 49.99233;9.030593 49.98974;9.030797 49.989025;9.030924 49.988487;9.03874 49.98814;9.040205 49.98807;9.045211 49.988148;9.045694 49.98878;9.047037 49.990063;9.047193 49.990208;9.04880756160812 49.9911860967423;8.929961 50.026254',
'8.983134 50.181942;8.908745 50.043518;8.929961 50.026254;9.04880756160812 49.9911860967423;9.049953 49.99188;9.050457 49.992336;9.05083 49.992683;9.051711 49.992657;9.051757 49.9935;9.051488 49.994568;9.051142 49.995167;9.050798 49.99556;9.050165 49.996002;9.048811 49.99694;9.048695 49.99702;9.047282 49.99799;9.046449 49.99851;9.046158 49.99844;9.045555 49.9983;9.04527 49.998272;9.044918 49.99828;9.043107 49.99863;9.042121 49.99879;9.041152 49.99886;9.040766 49.998943;9.040156 49.99947;9.040079 49.999527;9.039564 49.999706;9.039465 49.999786;9.038085 50.000435;9.037919 50.000618;9.0377445 50.000847;9.0376 50.001114;9.03735 50.00136;9.037236 50.001545;9.036803 50.001747;9.036756 50.002182;9.036667 50.002384;9.036496 50.002804;9.03544 50.004013;9.035325 50.004234;9.035429 50.004707;9.035399 50.004917;9.035442 50.005157;9.035463 50.005257;9.036014 50.00559;9.036134 50.00572;9.036236 50.00583;9.036397 50.006;9.035707 50.00682;9.03586 50.007023;9.03595 50.00714;9.036014 50.007416;9.036928 50.007828;9.037741 50.00826;9.037999 50.008354;9.03811 50.00853;9.038725 50.008926;9.039001 50.0091;9.038812 50.009605;9.038987 50.00993;9.039476 50.010334;9.039552 50.010452;9.036732 50.012848;9.035682 50.013836;9.035516 50.013996;9.034581 50.014957;9.033387 50.016506;9.032833 50.017113;9.031959 50.018276;9.031657 50.018726;9.030959 50.020096;9.030864 50.02034;9.030435 50.021854;9.030119 50.023094;9.02986 50.02525;9.029889 50.026047;9.03003 50.02655;9.030116 50.026863;9.030201 50.02717;9.031331 50.03249;9.031723 50.034588;9.031947 50.034924;9.031928 50.03743;9.031784 50.037964;9.031644 50.038273;9.031505 50.03858;9.031367 50.03889;9.031222 50.03922;9.030991 50.039593;9.030227 50.040165;9.029712 50.04055;9.02753 50.041897;9.027242 50.04221;9.026574 50.042522;9.02448 50.04322;9.024405 50.043293;9.022933 50.043793;9.021822 50.044113;9.021166 50.044296;9.019277 50.04469;9.018551 50.044834;9.018 50.044746;9.015781 50.045036;9.014741 50.045166;9.013702 50.045273;9.012026 50.045395;9.010284 50.045513;9.008912 50.04559;9.00865 50.045593;9.007922 50.0456;9.007356 50.04559;9.007054 50.045578;9.006281 50.045498;9.004956 50.045326;9.004694 50.045288;9.002129 50.04486;9.00018 50.044468;8.99986 50.04439;8.996341 50.043324;8.994942 50.0429;8.993899 50.042576;8.992542 50.042225;8.991617 50.041985;8.991159 50.041824;8.990295 50.041683;8.9898815 50.04161;8.988554 50.041485;8.986242 50.041515;8.984618 50.041744;8.983531 50.042156;8.982954 50.042294;8.98169 50.04279;8.98075 50.04324;8.979664 50.044;8.978422 50.04497;8.97788 50.045452;8.977531 50.045925;8.977299 50.04629;8.977208 50.046387;8.976893 50.046883;8.976471 50.047947;8.976201 50.04916;8.976096 50.05017;8.976069 50.050407;8.976227 50.051243;8.976714 50.052227;8.9771185 50.052864;8.978102 50.053627;8.97928 50.054344;8.980279 50.054905;8.981412 50.05564;8.981769 50.055832;8.983157 50.056946;8.984663 50.059002;8.986416 50.061455;8.987306 50.062416;8.98804 50.06313;8.988889 50.06403;8.98944 50.064747;8.990022 50.065613;8.99053 50.066498;8.990908 50.067387;8.991269 50.068428;8.9914255 50.068268;8.991552 50.068035;8.991859 50.067566;8.992064 50.06737;8.992227 50.06726;8.993236 50.066933;8.993327 50.06693;8.993711 50.067;8.994027 50.06712;8.994093 50.067238;8.994067 50.067337;8.993679 50.06768;8.993611 50.06784;8.993677 50.067955;8.993858 50.068;8.994038 50.068;8.994692 50.0677;8.99487 50.06767;8.995031 50.067642;8.995304 50.067673;8.995591 50.067806;8.995679 50.06801;8.995545 50.068325;8.995492 50.068527;8.9956045 50.068745;8.995985 50.06895;8.996479 50.06907;8.996771 50.06911;8.997064 50.06904;8.997292 50.068924;8.997695 50.068943;8.998309 50.0691;8.998728 50.069206;8.999109 50.06934;8.999491 50.06953;8.999516 50.069668;8.999501 50.069935;8.999398 50.070553;8.999354 50.07081;8.999337 50.070923;8.999201 50.071903;8.999162 50.072067;8.999141 50.07217;8.999127 50.072243;8.998969 50.073692;8.998928 50.074074;8.998862 50.07439;8.998672 50.0753;8.99855 50.075867;8.998444 50.076714;8.998404 50.077023;8.998401 50.077225;8.998902 50.079952;8.998787 50.080326;8.998913 50.081207;8.998912 50.081398;8.998912 50.08156;8.998912 50.081676;8.998911 50.08242;8.998911 50.082527;8.998865 50.082924;8.998837 50.08316;8.998561 50.08374;8.998492 50.08377;8.998157 50.083782;8.998637 50.085;8.9987135 50.085377;8.998788 50.08575;8.998867 50.086796;8.9988575 50.08732;8.998854 50.08746;8.998833 50.088486;8.998832 50.088593;8.998822 50.08898;8.998652 50.090324;8.998489 50.09086;8.997728 50.092594;8.997728 50.09268;8.997839 50.092884;8.998126 50.09329;8.998447 50.09357;8.998647 50.093773;8.998818 50.09393;8.999021 50.094097;8.999723 50.09451;8.999791 50.09455;8.999998 50.094723;9.003147 50.09728;9.004629 50.098705;9.005694 50.099995;9.010271 50.10558;9.010403 50.10574;9.010487 50.105854;9.010643 50.105984;9.011038 50.106144;9.01413 50.10901;9.016376 50.110046;9.016081 50.110325;9.018264 50.11141;9.020993 50.111908;9.022031 50.11207;9.023502 50.11219;9.027453 50.112576;9.029757 50.1127;9.030409 50.11273;9.030506 50.112755;9.033622 50.11359;9.035596 50.11412;9.036595 50.114346;9.036714 50.114372;9.03708 50.114452;9.039442 50.114765;9.039767 50.11476;9.041989 50.115025;9.0445795 50.115284;9.044786 50.115356;9.046936 50.115864;9.04739 50.11594;9.050541 50.115788;9.051917 50.11569;9.052955 50.115795;9.05356 50.115906;9.055593 50.11663;9.056226 50.116737;9.057112 50.116734;9.058686 50.116585;9.063531 50.11678;9.063827 50.116764;9.065291 50.11699;9.06702756029236 50.1176194926144;9.044162 50.154522;8.983134 50.181942',
'8.596686 50.052906;8.428374 49.88936;8.411872 49.861064;8.460533 49.823472;8.63495 49.823472;8.698188 49.889303;8.596686 50.052906',
'8.811278 49.943283;8.730033 49.892763;8.81965 49.745535;8.852794 49.730395;8.918061 49.858243;8.811278 49.943283',
'8.908745 50.043518;8.831083 50.010288;8.811278 49.943283;8.918061 49.858243;8.932618 49.859406;8.973474 49.919104;8.929961 50.026254;8.908745 50.043518',
'9.02540299560584 49.9404664607466;8.973474 49.919104;8.932618 49.859406;9.024507 49.801969;9.09006414000191 49.7919818397501;9.08998 49.7932;9.090321 49.79525;9.090313 49.795734;9.090218 49.79593;9.089911 49.796124;9.0896 49.79626;9.088855 49.796703;9.088452 49.797153;9.087597 49.79838;9.087361 49.798653;9.08704 49.799023;9.086833 49.799465;9.086852 49.799637;9.087071 49.799995;9.087537 49.800766;9.087578 49.800922;9.087404 49.801353;9.087352 49.8015;9.0871 49.802326;9.087118 49.80265;9.086911 49.80345;9.086884 49.80386;9.086533 49.805477;9.08606 49.806667;9.085795 49.806892;9.085011 49.808308;9.084633 49.8088;9.084323 49.809093;9.083688 49.809452;9.082608 49.810165;9.082233 49.8105;9.082054 49.81078;9.081761 49.811497;9.081178 49.81266;9.080949 49.813374;9.080838 49.81363;9.080782 49.81367;9.079976 49.81441;9.078526 49.8154;9.078126 49.815777;9.077522 49.816936;9.077054 49.817657;9.076873 49.818092;9.076822 49.81868;9.076944 49.819275;9.077241 49.819767;9.077991 49.820686;9.078552 49.82113;9.079435 49.821766;9.081116 49.822987;9.081181 49.82317;9.081233 49.823986;9.081341 49.824085;9.08221 49.824387;9.083161 49.824787;9.085714 49.826042;9.086622 49.82651;9.085748 49.828094;9.085409 49.829037;9.085235 49.829105;9.082702 49.82947;9.0827 49.829597;9.083063 49.83012;9.08338 49.830784;9.083393 49.831112;9.08292 49.83243;9.08274 49.832634;9.081643 49.833134;9.080238 49.834023;9.08002 49.834095;9.077775 49.83422;9.0777 49.83487;9.078435 49.835144;9.078566 49.835297;9.078751 49.835934;9.078943 49.836243;9.079329 49.83664;9.080063 49.837177;9.080341 49.8375;9.081181 49.83831;9.081742 49.838654;9.082629 49.839123;9.083346 49.83931;9.084343 49.83951;9.0853 49.839687;9.086344 49.839752;9.087053 49.839912;9.087866 49.8401;9.088949 49.840485;9.089468 49.840714;9.089727 49.8409;9.089746 49.841095;9.089677 49.84131;9.08941 49.841686;9.088658 49.842583;9.087797 49.843334;9.087374 49.843796;9.086661 49.84496;9.086298 49.846027;9.086031 49.846348;9.085624 49.8474;9.085445 49.847694;9.085286 49.847794;9.085164 49.84772;9.082733 49.845383;9.080428 49.843582;9.078522 49.84277;9.077637 49.842213;9.075879 49.8403;9.074727 49.83855;9.074558 49.83821;9.072461 49.837013;9.071378 49.836487;9.071184 49.83633;9.070573 49.83498;9.0706 49.83481;9.070779 49.834274;9.070653 49.83371;9.070442 49.83327;9.070229 49.833157;9.066972 49.832165;9.065733 49.831818;9.064361 49.831837;9.063904 49.83179;9.063556 49.83179;9.058275 49.8326;9.056592 49.83408;9.056157 49.834465;9.056482 49.834633;9.056805 49.83486;9.056933 49.83503;9.056997 49.835144;9.056997 49.835228;9.056689 49.83538;9.058763 49.838093;9.059084 49.838432;9.05919 49.83866;9.05916 49.83916;9.058501 49.839657;9.0598135 49.840675;9.059747 49.840816;9.059374 49.840996;9.058653 49.841106;9.058572 49.841103;9.058175 49.841087;9.057502 49.8408;9.05603 49.8403;9.055401 49.840015;9.053867 49.83913;9.052341 49.840656;9.052859 49.840927;9.053555 49.841187;9.054617 49.84153;9.053943 49.842808;9.0546 49.842888;9.054889 49.842915;9.055576 49.843014;9.056531 49.843216;9.05653 49.8433;9.055795 49.844395;9.056425 49.844566;9.056945 49.84464;9.058449 49.844666;9.058468 49.844875;9.058816 49.844917;9.059685 49.845135;9.060682 49.845436;9.060583 49.845547;9.060486 49.845654;9.06004 49.846138;9.058782 49.845776;9.057565 49.845543;9.055999 49.845364;9.055347 49.845375;9.054713 49.845413;9.054166 49.845524;9.054014 49.84551;9.053091 49.844517;9.0522375 49.84334;9.051484 49.84269;9.050728 49.842175;9.05047 49.84208;9.049731 49.84196;9.049099 49.841915;9.047749 49.841934;9.047429 49.841953;9.046155 49.842037;9.045499 49.842144;9.044509 49.842873;9.044026 49.84319;9.043761 49.84347;9.043601 49.843906;9.043448 49.84395;9.043188 49.843918;9.042817 49.843803;9.042669 49.84362;9.04265 49.842873;9.042613 49.841366;9.042056 49.840717;9.041568 49.83984;9.040676 49.84045;9.037802 49.842545;9.037752 49.842617;9.037256 49.844578;9.037225 49.844707;9.037024 49.845158;9.036579 49.845818;9.03618 49.846264;9.036266 49.846405;9.037153 49.846848;9.037606 49.84702;9.038042 49.84715;9.038601 49.84719;9.039261 49.847183;9.0401325 49.847202;9.04074 49.84728;9.040783 49.847347;9.041071 49.848633;9.041244 49.848873;9.041736 49.84931;9.042234 49.849667;9.042708 49.84988;9.043207 49.850037;9.043151 49.8508;9.042739 49.85219;9.042649 49.852722;9.042589 49.85323;9.042571 49.853382;9.042651 49.853874;9.042903 49.854496;9.043204 49.854877;9.043783 49.855457;9.043411 49.85561;9.043061 49.85571;9.04249 49.855957;9.04187 49.856342;9.0413265 49.85668;9.040778 49.85686;9.03927 49.857117;9.038308 49.857338;9.037913 49.857533;9.037264 49.858006;9.036482 49.858578;9.035955 49.8589;9.035183 49.859512;9.034546 49.8599;9.033932 49.86018;9.034091 49.86125;9.034232 49.862038;9.034495 49.863503;9.034507 49.86378;9.033423 49.86653;9.036379 49.8671;9.036682 49.86716;9.038077 49.865562;9.038234 49.86552;9.040817 49.866;9.041557 49.86612;9.041951 49.866222;9.042165 49.866356;9.043625 49.86794;9.044549 49.867294;9.045972 49.866615;9.046541 49.866405;9.047089 49.866257;9.049226 49.8661;9.049817 49.86612;9.050336 49.866165;9.050521 49.866882;9.050517 49.86725;9.050428 49.867558;9.050296 49.86769;9.050123 49.867756;9.049794 49.867783;9.049006 49.867947;9.048941 49.868004;9.048937 49.868324;9.048847 49.86858;9.048603 49.86879;9.048295 49.868984;9.046743 49.869408;9.046151 49.869534;9.045822 49.86963;9.045582 49.869755;9.045296 49.86995;9.045139 49.87016;9.044842 49.871227;9.044572 49.871784;9.04437 49.872166;9.044083 49.872402;9.043644 49.87268;9.042613 49.873238;9.039731 49.875076;9.039158 49.87548;9.038629 49.87601;9.038362 49.87636;9.037959 49.87705;9.037599 49.877975;9.037185 49.87931;9.037183 49.879505;9.037468 49.880943;9.037584 49.881924;9.037723 49.883057;9.037691 49.88356;9.037556 49.88391;9.037332 49.88432;9.037328 49.884575;9.037585 49.884815;9.037627 49.88494;9.03756 49.885124;9.037255 49.885635;9.037221 49.8857;9.037135 49.885853;9.037309 49.885895;9.037307 49.886078;9.037586 49.88609;9.037557 49.88618;9.037339 49.886826;9.0373125 49.8872;9.037529 49.8872;9.037391 49.88764;9.037339 49.888344;9.037357 49.888584;9.037673 49.889328;9.037885 49.88982;9.037795 49.889923;9.037793 49.890064;9.037985 49.89036;9.037244 49.890427;9.037092 49.89183;9.038006 49.891964;9.037832 49.892345;9.037776 49.892467;9.037014 49.894127;9.036856 49.894485;9.036657 49.894836;9.036536 49.894993;9.03639 49.895176;9.036365 49.89534;9.03643 49.895454;9.036646 49.89563;9.037143 49.895714;9.03629 49.896072;9.036115 49.896187;9.035884 49.896885;9.035382 49.89691;9.03564 49.89881;9.035659 49.89961;9.033517 49.899464;9.033473 49.89987;9.033779 49.899914;9.033698 49.899994;9.032924 49.900757;9.032269 49.900475;9.032093 49.900517;9.031901 49.90094;9.031285 49.90152;9.032771 49.90155;9.031584 49.90339;9.031036 49.904137;9.032565 49.90453;9.03244 49.904644;9.031314 49.90574;9.030964 49.90574;9.030199 49.905792;9.029937 49.905876;9.029892 49.906006;9.030306 49.906357;9.0311575 49.907185;9.031396 49.907593;9.031614 49.908237;9.031591 49.908535;9.031478 49.90886;9.032061 49.90904;9.032287 49.90911;9.032026 49.909588;9.031128 49.909504;9.030997 49.909393;9.030954 49.90922;9.030495 49.90917;9.029314 49.909096;9.02916 49.90983;9.027323 49.90964;9.027127 49.910107;9.024507 49.909443;9.024077 49.90973;9.02386 49.909866;9.023213 49.9103;9.024233 49.912296;9.024583 49.912735;9.02515 49.913284;9.025564 49.913734;9.026214 49.91483;9.026736 49.916107;9.027669 49.917572;9.029694 49.920074;9.029873 49.920395;9.03139 49.923084;9.031871 49.92397;9.0320635 49.92432;9.03215 49.924603;9.032083 49.92494;9.0316 49.925446;9.031498 49.92553;9.031425 49.925602;9.03125 49.92577;9.030372 49.92657;9.02969 49.927273;9.029537 49.92754;9.029421 49.92804;9.029334 49.929462;9.029352 49.9297;9.029439 49.930912;9.029433 49.931797;9.029411 49.931873;9.029389 49.931946;9.029261 49.93239;9.029211 49.932552;9.029016 49.93261;9.02838 49.93286;9.0280075 49.93327;9.027196 49.93438;9.02689 49.934437;9.026805 49.934605;9.02663 49.935257;9.02647 49.93584;9.026379 49.936047;9.026298 49.936226;9.025988 49.93728;9.025653 49.93919;9.025433 49.940132;9.02540299560584 49.9404664607466-9.108077 49.79813;9.105049 49.795746;9.103634 49.794914;9.102044 49.79414;9.100752 49.793564;9.100714 49.79334;9.100244 49.79311;9.1 49.79304;9.099206 49.792816;9.097073 49.79203;9.096577 49.791805;9.09579935957891 49.7911081201677;9.113694 49.788382;9.1297700919797 49.792583632931;9.129771 49.792595;9.129896 49.79285;9.129407 49.793003;9.129102 49.793262;9.130529 49.793644;9.131949 49.79425;9.131905 49.794334;9.131415 49.794773;9.129575 49.795322;9.1278715 49.795784;9.124641 49.796314;9.122041 49.79658;9.121459 49.796642;9.115093 49.797455;9.113911 49.797863;9.108077 49.79813',
'8.63495 49.823472;8.460533 49.823472;8.47116730598206 49.7686221485515;8.471287 49.768604;8.472826 49.768272;8.473414 49.768147;8.474413 49.767864;8.474843 49.767746;8.47579 49.767426;8.476387 49.767166;8.476989 49.766754;8.477936 49.765938;8.478732 49.76508;8.47917 49.764454;8.479525 49.76374;8.479714 49.762814;8.479741 49.76215;8.479689 49.76126;8.479638 49.760937;8.479383 49.760242;8.479025 49.759407;8.478581 49.758568;8.477856 49.757626;8.47734 49.75701;8.47694 49.75664;8.476732 49.75645;8.47571036214798 49.7557213208916;8.665842 49.664456;8.673807 49.706501;8.63495 49.823472',
'8.730033 49.892763;8.698188 49.889303;8.63495 49.823472;8.673807 49.706501;8.81965 49.745535;8.730033 49.892763',
'8.932618 49.859406;8.918061 49.858243;8.852794 49.730395;8.869281 49.696448;8.918407 49.695554;9.024507 49.801969;8.932618 49.859406',
'9.024507 49.801969;8.918407 49.695554;8.993265 49.657042;9.01219 49.656543;9.113694 49.788382;9.09579935957891 49.7911081201677;9.094449 49.789898;9.094102 49.78984;9.093625 49.789864;9.090304 49.79056;9.090115 49.791264;9.09007 49.791897;9.09006414000191 49.7919818397501;9.024507 49.801969',
'8.47571036214798 49.7557213208916;8.475358 49.75547;8.474048 49.754578;8.47367857868001 49.7543410885013;8.484234 49.636042;8.665609 49.661289;8.665842 49.664456;8.47571036214798 49.7557213208916',
'8.81965 49.745535;8.673807 49.706501;8.665842 49.664456;8.665609 49.661289;8.68242585058688 49.6244794323271;8.682462 49.624477;8.682773 49.62428;8.683263 49.623905;8.683395 49.623764;8.684443 49.62321;8.685006 49.622887;8.685916 49.622555;8.686287 49.622467;8.686761 49.62251;8.686905 49.62256;8.687735 49.62294;8.688387 49.62313;8.688826 49.623196;8.689356 49.62322;8.690072 49.62317;8.69042 49.62316;8.690674 49.623215;8.6907835 49.623276;8.691032 49.62347;8.691334 49.623665;8.691536 49.62372;8.691866 49.6237;8.69197 49.623703;8.692358 49.623615;8.692805 49.623432;8.693299 49.622974;8.693571 49.62255;8.693517 49.6223;8.69343 49.622253;8.693144 49.622093;8.692646 49.621593;8.692496 49.621418;8.69218 49.621086;8.69210355115638 49.6207567767541;8.753989 49.606009;8.847406 49.635484;8.869281 49.696448;8.852794 49.730395;8.81965 49.745535',
'8.869281 49.696448;8.847406 49.635484;8.91248 49.513981;8.993265 49.657042;8.918407 49.695554;8.869281 49.696448',
'9.1297700919797 49.792583632931;9.113694 49.788382;9.01219 49.656543;9.07247562809678 49.5666939992709;9.072559 49.56672;9.073177 49.566914;9.07326 49.56714;9.073556 49.56745;9.073658 49.567734;9.073451 49.568436;9.073469 49.568626;9.073552 49.568787;9.073807 49.56893;9.074085 49.56917;9.074296 49.57046;9.07412 49.57069;9.073771 49.570854;9.07357 49.57122;9.073674 49.571697;9.073579 49.57332;9.073655 49.57401;9.073735 49.574306;9.073975 49.57441;9.073958 49.57461;9.073796 49.575127;9.07557 49.57512;9.076665 49.575043;9.077759 49.574963;9.078336 49.574238;9.079656 49.571915;9.080033 49.571526;9.080633 49.570698;9.080987 49.570267;9.081277 49.56976;9.081417 49.569286;9.081479 49.56826;9.081195 49.56617;9.080984 49.564938;9.080901 49.564625;9.081376 49.563572;9.082666 49.56174;9.08482 49.561134;9.087203 49.560963;9.088417 49.560825;9.090144 49.56105;9.091502 49.56129;9.091717 49.5614;9.092148 49.56142;9.092562 49.56133;9.092957 49.56109;9.093523 49.56086;9.093935 49.56075;9.094326 49.560677;9.095453 49.560574;9.095886 49.560513;9.09684 49.560463;9.098095 49.560486;9.098828 49.56059;9.099044 49.56065;9.099796 49.56092;9.1 49.561123;9.100156 49.56127;9.100275 49.56145;9.100326 49.561543;9.100298 49.561607;9.099997 49.56204;9.0998335 49.562267;9.099735 49.562958;9.099645 49.564228;9.09974 49.56493;9.099965 49.56558;9.1 49.565765;9.100161 49.56665;9.100154 49.569263;9.100035 49.56977;9.1 49.57007;9.099932 49.570614;9.1 49.571014;9.100107 49.57167;9.100291 49.572346;9.101224 49.574276;9.101601 49.574986;9.102062 49.575714;9.102334 49.576145;9.102699 49.577442;9.102779 49.5777;9.102633 49.578625;9.102668 49.579033;9.102483 49.579662;9.101644 49.580585;9.101268 49.580944;9.100791 49.580982;9.100355 49.581165;9.099999 49.581413;9.099916 49.58147;9.099587 49.581764;9.09912 49.58242;9.098764 49.582924;9.096836 49.585243;9.096177 49.585747;9.095433 49.586185;9.093709 49.58699;9.093293 49.587257;9.092223 49.5884;9.091569 49.58907;9.090966 49.59008;9.089912 49.592;9.089331 49.59289;9.089051 49.592873;9.088685 49.593685;9.088523 49.594315;9.088461 49.59522;9.08856 49.595905;9.088393 49.5967;9.088059 49.597244;9.087658 49.597775;9.087174 49.598217;9.086403 49.59889;9.085039 49.6;9.084971 49.60007;9.084855 49.60042;9.084652 49.60072;9.084057 49.60118;9.083683 49.601402;9.08333 49.601692;9.083023 49.601887;9.082849 49.601917;9.082502 49.60191;9.082571 49.60169;9.082419 49.601658;9.081704 49.60161;9.081377 49.601677;9.08066 49.601715;9.07815 49.60134;9.077892 49.601284;9.077527 49.601097;9.076423 49.60095;9.076091 49.601196;9.074926 49.60096;9.074059 49.60087;9.073754 49.600883;9.071622 49.601147;9.069021 49.60204;9.068038 49.60232;9.067474 49.602345;9.066367 49.60227;9.066319 49.602383;9.06633 49.602654;9.06629 49.603973;9.066463 49.604313;9.066461 49.604427;9.066127 49.604523;9.066105 49.60469;9.066461 49.605015;9.066303 49.605404;9.06664 49.605778;9.067105 49.60675;9.067803 49.607864;9.068347 49.60811;9.068379 49.608204;9.068248 49.60836;9.06813 49.608597;9.068133 49.609165;9.068121 49.610153;9.06811 49.611115;9.067971 49.611485;9.067645 49.611977;9.067477 49.61206;9.067219 49.612118;9.067144 49.61275;9.066859 49.613102;9.066781 49.613243;9.066499 49.613525;9.066563 49.61385;9.066536 49.614082;9.066179 49.61439;9.065497 49.614574;9.065345 49.615334;9.06519 49.615654;9.064838 49.616364;9.064906 49.617126;9.0652 49.617702;9.0654335 49.617847;9.065505 49.617943;9.065696 49.61828;9.0659485 49.618484;9.066012 49.618748;9.066208 49.619053;9.066293 49.619167;9.066956 49.61965;9.067495 49.620014;9.067587 49.620026;9.06777 49.620007;9.067822 49.62008;9.067791 49.6202;9.068161 49.62043;9.067794 49.62046;9.068307 49.62105;9.068304 49.62176;9.068469 49.622375;9.068698 49.62267;9.068845 49.62264;9.068955 49.6227;9.069007 49.622784;9.068915 49.62279;9.069003 49.62289;9.070366 49.623863;9.07097 49.623917;9.071302 49.623863;9.0720825 49.6241;9.073208 49.62448;9.073799 49.624905;9.07432 49.625294;9.075146 49.625717;9.075465 49.626102;9.076052 49.626762;9.076733 49.6272;9.077634 49.627804;9.078402 49.6284;9.07878 49.62861;9.079827 49.629143;9.080139 49.629864;9.08035 49.630795;9.080577 49.631813;9.080957 49.63252;9.081283 49.632797;9.081658 49.63304;9.082403 49.633286;9.083651 49.633816;9.083405 49.634098;9.08382 49.634342;9.084533 49.634945;9.084632 49.634922;9.084819 49.635067;9.085237 49.635265;9.0857 49.635643;9.085827 49.63574;9.086046 49.63575;9.086746 49.63563;9.087074 49.635708;9.087514 49.635708;9.087899 49.635693;9.088325 49.6356;9.088788 49.635406;9.089362 49.63519;9.08967 49.635345;9.090756 49.63512;9.091562 49.635143;9.09189 49.635197;9.092161 49.63534;9.092573 49.635715;9.093304 49.63645;9.093897 49.63682;9.094566 49.637146;9.095472 49.63754;9.096296 49.63813;9.097029 49.63875;9.098012 49.63958;9.098661 49.639957;9.099133 49.6402;9.100238 49.64061;9.100961 49.64096;9.101697 49.64145;9.101928 49.641724;9.102098 49.642227;9.102021 49.64294;9.101791 49.643307;9.100975 49.644238;9.1004505 49.64461;9.099501 49.645172;9.099043 49.645756;9.099095 49.64645;9.09918 49.64668;9.099801 49.647385;9.100888 49.649067;9.100816 49.649628;9.100422 49.650562;9.099779 49.651875;9.099575 49.6526;9.099517 49.653362;9.099726 49.653675;9.100067 49.653927;9.10068 49.654305;9.100927 49.654663;9.101678 49.655888;9.102319 49.656548;9.102788 49.657433;9.103029 49.658012;9.103241 49.658855;9.103139 49.659214;9.103208 49.65941;9.103614 49.6599;9.103612 49.660027;9.103439 49.660316;9.103199 49.66042;9.103031 49.660465;9.102312 49.6606;9.101718 49.660854;9.101384 49.660957;9.101101 49.661148;9.100417 49.66131;9.100215 49.66145;9.099729 49.66166;9.09922 49.662106;9.098725 49.662228;9.098573 49.662323;9.098435 49.662605;9.098269 49.662785;9.097776 49.66319;9.09758 49.66363;9.097448 49.66383;9.097111 49.664093;9.096839 49.664528;9.096633 49.664738;9.09628 49.664917;9.095942 49.665257;9.0952 49.665535;9.094516 49.66566;9.093712 49.66616;9.093156 49.666344;9.092405 49.666965;9.092236 49.667118;9.091788 49.66735;9.090374 49.668034;9.088978 49.66872;9.088902 49.66884;9.088925 49.669266;9.089137 49.67079;9.088731 49.67086;9.088994 49.671886;9.088815 49.67237;9.088714 49.67269;9.088644 49.67317;9.088485 49.67359;9.088336 49.674294;9.088342 49.674713;9.088439 49.67513;9.088634 49.675495;9.088963 49.67611;9.089192 49.67696;9.08916 49.677425;9.088934 49.679504;9.088828 49.68124;9.088469 49.682224;9.088014 49.68335;9.087948 49.68367;9.087985 49.685505;9.087895 49.6861;9.088387 49.686188;9.088213 49.687164;9.087826 49.687183;9.087717 49.687763;9.088065 49.687805;9.087983 49.68872;9.088142 49.69012;9.088348 49.690594;9.088989 49.691895;9.089525 49.693024;9.08971 49.692978;9.089783 49.693005;9.089816 49.693123;9.089724 49.69318;9.090076 49.693363;9.090698 49.693695;9.090433 49.693977;9.091678 49.69473;9.092183 49.694973;9.092655 49.69515;9.093043 49.69511;9.093403 49.6952;9.093861 49.695374;9.094622 49.69572;9.095286 49.69604;9.096946 49.696053;9.097918 49.69591;9.099402 49.69593;9.100485 49.69593;9.100888 49.69599;9.101618 49.6961;9.102549 49.696278;9.103408 49.696407;9.104869 49.696712;9.105358 49.696846;9.105498 49.696857;9.105943 49.69699;9.10655 49.69709;9.10707 49.69707;9.107784 49.697247;9.108171 49.69723;9.108608 49.69725;9.1089945 49.69734;9.109518 49.69741;9.109651 49.69744;9.1101 49.697544;9.110643 49.697533;9.111203 49.697712;9.111832 49.69773;9.112286 49.697792;9.113829 49.697643;9.114653 49.697605;9.114784 49.697594;9.115414 49.697502;9.115742 49.697567;9.116544 49.697617;9.117296 49.697815;9.117581 49.69786;9.117908 49.69788;9.118297 49.697765;9.118487 49.697895;9.118855 49.697983;9.119114 49.697987;9.119247 49.697903;9.119576 49.697903;9.119987 49.698025;9.120196 49.698162;9.120715 49.69828;9.121041 49.69839;9.121514 49.69847;9.121905 49.698586;9.122266 49.69884;9.122378 49.69918;9.122803 49.69944;9.123709 49.69973;9.124881 49.699883;9.125136 49.7;9.125656 49.700233;9.126001 49.700306;9.126651 49.70044;9.127385 49.7007;9.127532 49.70163;9.127567 49.702198;9.127789 49.7024;9.127991 49.70259;9.127447 49.703598;9.127139 49.705536;9.126979 49.706768;9.126846 49.706757;9.12626 49.706703;9.124155 49.706535;9.123258 49.70646;9.123332 49.707367;9.123418 49.708214;9.123343 49.708847;9.123044 49.70907;9.12249 49.709217;9.121767 49.710434;9.121518 49.711395;9.121549 49.712276;9.121598 49.71273;9.121509 49.713287;9.121664 49.71368;9.121611 49.714207;9.120969 49.714783;9.121762 49.714684;9.12182 49.714577;9.121914 49.714542;9.122039 49.714687;9.12312 49.714687;9.1247 49.714672;9.124947 49.715042;9.126211 49.71512;9.126447 49.714573;9.128399 49.71468;9.128628 49.715015;9.13087 49.714973;9.131355 49.714706;9.13226 49.715134;9.133851 49.715984;9.134592 49.716743;9.134989 49.717655;9.135348 49.71855;9.13548 49.719456;9.13545 49.719788;9.135486 49.72048;9.135681 49.72135;9.135658 49.72152;9.135622 49.72185;9.135849 49.722916;9.136225 49.724503;9.136376 49.72503;9.136965 49.725582;9.138189 49.72643;9.138671 49.726902;9.138816 49.726967;9.139824 49.727898;9.140873 49.72957;9.140945 49.73016;9.140894 49.730553;9.141481 49.731228;9.141694 49.731625;9.141859 49.732014;9.142101 49.732586;9.142648 49.733463;9.142419 49.73388;9.142458 49.734222;9.143073 49.73578;9.143776 49.737278;9.14424 49.73793;9.144746 49.73847;9.145386 49.738983;9.145687 49.739155;9.146372 49.739635;9.146474 49.739685;9.146888 49.739872;9.147188 49.7401;9.147354 49.74041;9.147731 49.740974;9.148028 49.741318;9.1488 49.741802;9.149358 49.74206;9.150148 49.74233;9.1503935 49.74241;9.150602 49.74275;9.148851 49.74343;9.148277 49.743656;9.146093 49.744057;9.145302 49.744354;9.14404 49.744484;9.144032 49.744877;9.143502 49.74521;9.14413 49.74632;9.144217 49.746475;9.144748 49.74756;9.139744 49.749672;9.139951 49.750042;9.138767 49.750538;9.133941 49.752625;9.131402 49.753746;9.128356 49.755074;9.127924 49.75504;9.1275835 49.755154;9.126215 49.755615;9.125518 49.75563;9.125464 49.756027;9.123417 49.756176;9.123252 49.75581;9.122688 49.755886;9.119597 49.755997;9.117417 49.756256;9.116379 49.75628;9.113547 49.75633;9.112282 49.756485;9.111319 49.756725;9.108863 49.757687;9.109028 49.758;9.108154 49.758297;9.106885 49.75868;9.107422 49.75981;9.1077 49.760994;9.108063 49.761982;9.108488 49.762653;9.108652 49.76292;9.109545 49.763718;9.109622 49.763947;9.109664 49.76408;9.110141 49.76594;9.110436 49.76634;9.110824 49.766537;9.111518 49.766544;9.112342 49.766666;9.112861 49.76681;9.112723 49.767094;9.113068 49.767265;9.113152 49.767548;9.112923 49.767998;9.111937 49.769226;9.111973 49.769566;9.112095 49.76993;9.1125145 49.770554;9.112549 49.770977;9.112303 49.77213;9.112384 49.77241;9.112592 49.772724;9.113144 49.773403;9.113221 49.77377;9.116889 49.7737;9.117133 49.773697;9.117784 49.773815;9.118389 49.77399;9.118948 49.774277;9.119286 49.77462;9.119359 49.77524;9.119574 49.775383;9.120004 49.775528;9.12126 49.775738;9.121905 49.776024;9.122978 49.7766;9.123573 49.77658;9.12437 49.776558;9.126461 49.776352;9.127112 49.776417;9.1275015 49.77659;9.127926 49.7769;9.128812 49.778038;9.129658 49.778976;9.1303835 49.77957;9.131115 49.779976;9.130975 49.78031;9.13158 49.780487;9.132311 49.78083;9.133424 49.781544;9.133893 49.781918;9.134191 49.782257;9.134226 49.782597;9.134217 49.782932;9.133904 49.78338;9.13315 49.783905;9.132174 49.784767;9.13071 49.78599;9.128933 49.78755;9.129524 49.788345;9.129256 49.78865;9.129722 49.78916;9.129672 49.789444;9.129688 49.790592;9.1297035 49.79175;9.1297700919797 49.792583632931-9.07885364001356 49.5571882843028;9.080442 49.5548210110059;9.080442 49.5549;9.0808 49.55537;9.080819 49.55558;9.080901 49.555695;9.081094 49.55575;9.081114 49.555866;9.081348 49.55605;9.0813675 49.556175;9.081278 49.55626;9.081149 49.556316;9.080999 49.556343;9.080755 49.55665;9.080725 49.556667;9.080513 49.5568;9.080229 49.55687;9.07971 49.556896;9.0791445 49.55706;9.07885364001356 49.5571882843028-9.08059057536405 49.5545995760069;9.0859713386725 49.5465801487954;9.086179 49.546776;9.086288 49.54679;9.086372 49.546917;9.086522 49.54702;9.086693 49.547077;9.086791 49.547638;9.086786 49.54789;9.086479 49.54813;9.086456 49.548195;9.086497 49.548313;9.086474 49.548424;9.0864935 49.548523;9.086599 49.548622;9.0865965 49.548763;9.086246 49.549;9.086068 49.549236;9.0859585 49.54932;9.085504 49.549397;9.085457 49.549484;9.085454 49.54964;9.085387 49.54975;9.085277 49.549847;9.085276 49.549965;9.085403 49.550014;9.085641 49.550034;9.085705 49.550106;9.085703 49.55019;9.085414 49.55059;9.085342 49.550983;9.085118 49.551327;9.084786 49.551674;9.0848055 49.5518;9.084977 49.551903;9.08504 49.551994;9.084916 49.552063;9.084844 49.55214;9.084881 49.55242;9.084697 49.552998;9.084666 49.55346;9.0845995 49.553574;9.084424 49.553665;9.084075 49.55379;9.083488 49.5539;9.082016 49.55404;9.081799 49.55404;9.081517 49.554096;9.081016 49.55433;9.08059057536405 49.5545995760069-9.092371 49.542007;9.092026 49.541992;9.091811 49.541862;9.091011 49.541775;9.090405 49.541798;9.089714 49.541668;9.08915868785261 49.5418297605545;9.09965237598352 49.5261900895037;9.099753 49.526196;9.09985970594411 49.5258810873357;9.11012535617339 49.5105812813279;9.113 49.511433;9.11397 49.511635;9.114766 49.511837;9.116437 49.512665;9.117215 49.51276;9.117778 49.512695;9.118887 49.512333;9.119497 49.51217;9.119801 49.512188;9.120123 49.51227;9.120818 49.512962;9.120887 49.513027;9.1209545 49.513138;9.121663 49.514313;9.121913 49.514782;9.1222725 49.51518;9.12272 49.51553;9.123878 49.51619;9.12497 49.516586;9.126049 49.516792;9.1262865 49.516933;9.126085 49.517056;9.125325 49.5175;9.123904 49.518272;9.123534 49.51957;9.123767 49.520462;9.125638 49.521557;9.12369 49.522804;9.119758 49.526737;9.117274 49.528316;9.115791 49.5304;9.115423 49.53152;9.115325 49.53208;9.11553 49.53377;9.113259 49.53488;9.1113825 49.53569;9.110245 49.536263;9.10953 49.536453;9.10888 49.536507;9.107473 49.53652;9.106607 49.536457;9.105986 49.53626;9.105408 49.53589;9.104827 49.535744;9.104501 49.535755;9.104282 49.535908;9.104275 49.536243;9.10446 49.536713;9.104784 49.536808;9.104822 49.537064;9.1047535 49.53733;9.104771 49.537556;9.104613 49.537796;9.104177 49.538017;9.103199 49.538147;9.102377 49.5382;9.102164 49.538086;9.101992 49.538025;9.101819 49.53802;9.101579 49.538067;9.101061 49.538033;9.100649 49.538074;9.100391 49.538013;9.100195 49.538055;9.099999 49.538067;9.099719 49.53808;9.098499 49.538532;9.098427 49.53884;9.098182 49.53925;9.097829 49.53951;9.097591 49.53942;9.09748 49.53952;9.097564 49.539658;9.095919 49.54087;9.095236 49.54151;9.094954 49.54161;9.094629 49.54159;9.094324 49.5417;9.093196 49.541843;9.092371 49.542007',
'8.665609 49.661289;8.484234 49.636042;8.46457053110293 49.5892911826462;8.465674 49.58858;8.4693365 49.58685;8.47268 49.585148;8.473092 49.585007;8.475795 49.58444;8.474042 49.581932;8.474045 49.58164;8.474245 49.580864;8.479444 49.578728;8.481302 49.577988;8.481328 49.574432;8.481782 49.57429;8.488444 49.5736;8.495126 49.572895;8.495208 49.572605;8.499011 49.569214;8.499671 49.56847;8.499999 49.568184;8.500316 49.567905;8.504015 49.565117;8.505035 49.564346;8.507742 49.56231;8.509671 49.560947;8.511392 49.559414;8.516515 49.555523;8.517028 49.555138;8.519124 49.553505;8.5225725 49.55082;8.522726 49.550705;8.523918 49.549805;8.524927 49.54902;8.525254 49.548767;8.526324 49.547935;8.528264 49.544334;8.529207 49.542583;8.529372 49.542274;8.530252 49.540485;8.531787 49.53737;8.532314 49.536377;8.533172 49.53566;8.533272 49.535576;8.535667 49.53363;8.535827 49.533447;8.537726 49.53182;8.538991 49.53074;8.540794 49.529198;8.542058 49.52812;8.549563 49.52485;8.551541 49.52421;8.551892 49.52402;8.553318 49.523254;8.553457 49.52318;8.553811 49.522987;8.555207 49.52222;8.5555315 49.52204;8.555697 49.52195;8.555972 49.52178;8.556068 49.521717;8.55617 49.521652;8.55697 49.521427;8.558178 49.521088;8.558795 49.520916;8.558995 49.52086;8.559294 49.520775;8.559708 49.52073;8.559925 49.520706;8.560097 49.520687;8.560291 49.520664;8.560805 49.52056;8.561012 49.520496;8.56113 49.52046;8.562166 49.52013;8.566895 49.519245;8.567266 49.51918;8.567497 49.51918;8.570047 49.52013;8.570557 49.520546;8.570996 49.52085;8.571388 49.521088;8.572831 49.520508;8.573377 49.521576;8.575748 49.520924;8.579134 49.5202;8.581251 49.519688;8.581605 49.520267;8.581983 49.520794;8.582256 49.521107;8.582746 49.521492;8.583323 49.521793;8.584737 49.5223;8.585642 49.52249;8.586227 49.52258;8.587398 49.52248;8.588264 49.522446;8.588785 49.52235;8.591161 49.521694;8.5919075 49.52241;8.592007 49.522507;8.592825 49.52356;8.592867 49.52389;8.592931 49.524742;8.593045 49.525322;8.593188 49.52566;8.593375 49.526;8.593442 49.526093;8.593626 49.52634;8.594105 49.52686;8.594591 49.527306;8.595087 49.52771;8.595794 49.52983;8.596064 49.530342;8.596401 49.530724;8.59674 49.530968;8.597211 49.531197;8.597641 49.53134;8.598179 49.531475;8.598894 49.53151;8.599694 49.531517;8.599999 49.531487;8.600518 49.53144;8.601083 49.53136;8.60152 49.531265;8.602894 49.530785;8.603484 49.530537;8.604272 49.530178;8.607976 49.52828;8.608197 49.530807;8.606646 49.531425;8.606986 49.533516;8.6084 49.534992;8.609294 49.536285;8.609372 49.5364;8.609486 49.53654;8.610445 49.537716;8.611838 49.539673;8.612176 49.540012;8.61252 49.54024;8.612736 49.540333;8.612946 49.54042;8.616735 49.540432;8.616535 49.544205;8.61734 49.5448;8.619379 49.54678;8.619349 49.546867;8.61919 49.546986;8.618779 49.547516;8.618306 49.54847;8.618101 49.54913;8.617838 49.55039;8.617763 49.55085;8.617687 49.551304;8.617521 49.552315;8.617619 49.552868;8.617675 49.553192;8.617824 49.55453;8.617128 49.55563;8.614501 49.55958;8.614166 49.55996;8.614151 49.55998;8.611577 49.56333;8.610857 49.564384;8.610967 49.564423;8.611138 49.564484;8.609417 49.56895;8.608667 49.570904;8.608716 49.57515;8.608634 49.575836;8.607892 49.5786;8.606272 49.58314;8.606086 49.58381;8.605847 49.584877;8.605602 49.585354;8.604554 49.588055;8.604388 49.588768;8.604324 49.589016;8.604154 49.589672;8.603273 49.593838;8.600249 49.59349;8.600092 49.59347;8.599999 49.593464;8.594099 49.59277;8.593981 49.592754;8.592545 49.592587;8.59058 49.59238;8.590498 49.59237;8.590089 49.59307;8.590071 49.593117;8.589505 49.594032;8.588704 49.595028;8.588191 49.595882;8.588621 49.596043;8.588017 49.597023;8.587873 49.59823;8.587867 49.598667;8.587806 49.59881;8.587164 49.6;8.586927 49.600464;8.586081 49.60188;8.585976 49.602142;8.586436 49.60219;8.585468 49.60377;8.5871935 49.60404;8.587422 49.604076;8.588912 49.60431;8.588821 49.60456;8.58918 49.60464;8.589405 49.604694;8.589541 49.604412;8.589975 49.60449;8.59475 49.6054;8.594841 49.605415;8.594509 49.606552;8.59435 49.607086;8.594149 49.60797;8.59404 49.608437;8.593893 49.609467;8.593871 49.609627;8.593812 49.610027;8.59472 49.61027;8.594997 49.610382;8.597502 49.61138;8.597632 49.611435;8.597758 49.611504;8.5980425 49.611614;8.598854 49.61194;8.599024 49.61167;8.599121 49.61156;8.599996 49.611755;8.602522 49.612312;8.606433 49.61312;8.606634 49.613155;8.607237 49.61326;8.607702 49.61334;8.608625 49.6135;8.608932 49.61317;8.612114 49.613834;8.611993 49.614258;8.613598 49.61455;8.614943 49.614693;8.616435 49.615017;8.618332 49.61555;8.619414 49.615746;8.6218405 49.61609;8.622024 49.615643;8.624621 49.616074;8.62484 49.61611;8.625032 49.616146;8.628457 49.616714;8.631313 49.617092;8.631305 49.61747;8.634858 49.617886;8.638996 49.618397;8.640539 49.618587;8.640677 49.61826;8.643229 49.61853;8.643668 49.6186;8.643731 49.618755;8.644467 49.618877;8.6448345 49.618946;8.645035 49.618988;8.64557 49.619083;8.645568 49.619225;8.645566 49.619335;8.646884 49.61967;8.6483345 49.620037;8.648443 49.620068;8.648612 49.62011;8.648853 49.62007;8.649125 49.619957;8.649815 49.618996;8.650169 49.6186;8.650385 49.618618;8.650447 49.61872;8.649825 49.61953;8.649867 49.619614;8.650495 49.619747;8.650908 49.61965;8.651128 49.619503;8.651401 49.618782;8.651577 49.618443;8.651773 49.618332;8.652795 49.618282;8.653139 49.618423;8.653554 49.618374;8.654499 49.61889;8.654972 49.619175;8.6554575 49.619244;8.655838 49.619297;8.659135 49.620472;8.661076 49.621254;8.661745 49.62151;8.662405 49.621532;8.664897 49.621548;8.666346 49.621548;8.666599 49.621613;8.668225 49.622234;8.668657 49.622433;8.668942 49.622616;8.669104 49.62275;8.669456 49.623173;8.669742 49.623314;8.670446 49.623554;8.670647 49.62362;8.670754 49.623646;8.67242 49.62372;8.672975 49.623787;8.673938 49.624004;8.674447 49.624123;8.67472 49.62421;8.675097 49.624428;8.675938 49.62449;8.676652 49.624466;8.676834 49.624504;8.677084 49.624676;8.677165 49.62496;8.677386 49.62541;8.67771 49.625553;8.6778755 49.62557;8.678479 49.62559;8.679071 49.625458;8.68095 49.624714;8.681303 49.624588;8.6816 49.624535;8.68242585058688 49.6244794323271;8.665609 49.661289-8.680727 49.622444;8.680437 49.622368;8.679967 49.62222;8.67966 49.62211;8.678988 49.62194;8.678752 49.62187;8.678415 49.621613;8.678345 49.62148;8.678297 49.62131;8.678219 49.620476;8.678187 49.620117;8.678066 49.619926;8.677726 49.619694;8.677345 49.619617;8.677032 49.619637;8.676552 49.61975;8.676403 49.619816;8.67629 49.61991;8.676072 49.620323;8.676014 49.620846;8.675829 49.620937;8.675606 49.621006;8.675274 49.62107;8.674888 49.621113;8.674578 49.621025;8.674433 49.620987;8.674183 49.62082;8.673649 49.62039;8.673219 49.620132;8.672917 49.619904;8.672722 49.61971;8.672661 49.6194;8.6726265 49.619305;8.672683 49.61875;8.672495 49.618393;8.672164 49.617935;8.671619 49.617188;8.671297 49.616886;8.671183 49.616623;8.671011 49.61632;8.670934 49.61584;8.670957 49.614895;8.670776 49.614796;8.670493 49.61477;8.6700945 49.61469;8.669584 49.614574;8.669368 49.614494;8.669202 49.61441;8.669115 49.614254;8.6689625 49.6136;8.669062 49.61336;8.669104 49.612972;8.669161 49.61272;8.669255 49.612663;8.670063 49.612606;8.670221 49.612686;8.670448 49.61307;8.670655 49.6134;8.670904 49.61361;8.6717 49.613907;8.672272 49.61401;8.672439 49.61399;8.672503 49.61335;8.672532 49.612663;8.672042 49.6118;8.671957 49.61149;8.671888 49.611195;8.671807 49.610546;8.671794 49.610207;8.671905 49.609936;8.672185 49.609795;8.672446 49.60968;8.672173 49.60923;8.672266 49.609154;8.673259 49.608307;8.674155 49.60791;8.674303 49.607853;8.674461 49.60757;8.674651 49.60738;8.674838 49.607265;8.675341 49.607082;8.675707 49.60709;8.67577854642737 49.6071076543132;8.67602436092463 49.6076338025194;8.676012 49.60771;8.67612509077007 49.6078494074901;8.6776176666679 49.6110441585727;8.677607 49.611073;8.677509 49.61219;8.677509 49.612442;8.677556 49.612633;8.67756 49.613026;8.6776285 49.61351;8.677607 49.61369;8.677475 49.613785;8.677527 49.61389;8.677603 49.61426;8.677888 49.614407;8.678101 49.614742;8.678367 49.614956;8.678723 49.615086;8.67967175059093 49.6154407770939;8.68227932554907 49.6210221032647;8.681955 49.62106;8.681698 49.621044;8.681476 49.621136;8.681377 49.621277;8.680727 49.622444-8.67948790402632 49.6150472667792;8.679353 49.614983;8.679121 49.61486;8.67846 49.61439;8.678287 49.614056;8.678253 49.613567;8.67835711775198 49.6126269002978;8.67948790402632 49.6150472667792',
'8.68563 49.62149;8.685051 49.62131;8.6840315 49.621094;8.6835785 49.621002;8.683111 49.620983;8.682927 49.62098;8.682323 49.621017;8.68227932554907 49.6210221032647;8.67967175059093 49.6154407770939;8.680258 49.61566;8.680936 49.61591;8.68124 49.6162;8.681319 49.61639;8.681723 49.616566;8.681969 49.616745;8.682056 49.61682;8.682144 49.617046;8.682305 49.617203;8.682394 49.617313;8.682664 49.6175;8.683241 49.61795;8.683695 49.61813;8.684361 49.618256;8.685281 49.61828;8.685778 49.61835;8.686242 49.6185;8.686394 49.618664;8.687081 49.618996;8.687779 49.619316;8.6877365 49.619484;8.687517 49.619453;8.6874075 49.619453;8.687029 49.619305;8.68668 49.619324;8.686498 49.61931;8.686226 49.61922;8.685955 49.61912;8.685626 49.619102;8.685549 49.61921;8.6854515 49.619434;8.685333 49.620163;8.6852865 49.62041;8.68563 49.62149-8.69210355115638 49.6207567767541;8.692056 49.620552;8.691995 49.620483;8.691795 49.62039;8.691457 49.620426;8.690513 49.620483;8.689961 49.62041;8.689614 49.620358;8.688945 49.620132;8.6884775 49.619923;8.688316 49.61975;8.688313 49.619415;8.688464 49.619286;8.689922 49.619957;8.690687 49.620087;8.691477 49.620007;8.693171 49.619854;8.693373 49.61972;8.69348 49.619556;8.694366 49.61933;8.694444 49.619247;8.694531 49.61899;8.694422 49.618847;8.694239 49.618874;8.692694 49.618538;8.692587 49.618515;8.691872 49.618965;8.691442 49.619186;8.69117 49.61955;8.690902 49.619415;8.690556 49.61935;8.690071 49.61907;8.690052 49.618935;8.690565 49.618374;8.690314 49.618202;8.689574 49.61798;8.689214 49.617863;8.688816 49.617607;8.688387 49.617424;8.688188 49.617386;8.687397 49.61741;8.686986 49.617413;8.686859 49.617367;8.686181 49.61689;8.686191 49.616634;8.68657 49.6157;8.68727 49.615715;8.687948 49.615704;8.688081 49.615562;8.687991 49.615063;8.687331 49.615063;8.687185 49.61506;8.686551 49.61486;8.686063 49.614674;8.68576 49.614532;8.685591 49.61445;8.684805 49.6144;8.684552 49.61442;8.68409 49.614544;8.683664 49.614784;8.683403 49.614983;8.683251 49.61515;8.683228 49.615307;8.683384 49.615513;8.683639 49.615562;8.684332 49.615623;8.684528 49.61568;8.684637 49.61579;8.6846485 49.6159;8.684481 49.61643;8.684363 49.61663;8.684156 49.61677;8.683878 49.616875;8.683586 49.61694;8.683347 49.616974;8.683109 49.61696;8.682799 49.6169;8.682544 49.61678;8.68235 49.616573;8.681933 49.61597;8.6817255 49.615646;8.681143 49.61552;8.680396 49.615425;8.680073 49.615326;8.67948790402632 49.6150472667792;8.67835711775198 49.6126269002978;8.67839 49.61233;8.6784315 49.612263;8.678863 49.61207;8.679204 49.611706;8.679516 49.611675;8.680365 49.611557;8.680494 49.611534;8.680957 49.611378;8.681144 49.61127;8.681089 49.610806;8.681201 49.61076;8.681383 49.610764;8.682698 49.61087;8.683321 49.6109;8.6823225 49.609707;8.681923 49.60912;8.682311 49.609077;8.682823 49.609062;8.683263 49.609055;8.683813 49.609016;8.6842 49.60945;8.684343 49.610027;8.68458 49.610542;8.684577 49.610626;8.684368 49.610836;8.6842375 49.610893;8.68409 49.61095;8.683867 49.61098;8.684086 49.611485;8.684266 49.611595;8.684525 49.61153;8.6847315 49.61163;8.684979 49.61187;8.684895 49.612656;8.684845 49.613;8.684606 49.613506;8.684633 49.613636;8.684815 49.613792;8.685225 49.6141;8.685496 49.614178;8.6856985 49.614155;8.68605 49.61404;8.686447 49.61375;8.687066 49.61337;8.687091 49.61318;8.686968 49.613033;8.686815 49.612743;8.686763 49.612637;8.68683 49.61235;8.686946 49.612164;8.6872835 49.611954;8.6874275 49.61178;8.687258 49.61142;8.686892 49.610996;8.686839 49.61089;8.68677 49.61083;8.686864 49.610733;8.686958 49.610664;8.687288 49.610657;8.687714 49.61053;8.687724 49.61027;8.687521 49.609825;8.687334 49.609406;8.686791 49.60877;8.686453 49.60849;8.686079 49.608246;8.685811 49.608063;8.685228 49.608456;8.684347 49.60848;8.683705 49.608505;8.682815 49.60881;8.682667 49.608833;8.681697 49.60878;8.681099 49.60883;8.680703 49.608982;8.680504 49.60906;8.67971 49.609272;8.679522 49.60934;8.679298 49.60947;8.67885 49.6097;8.678626 49.609802;8.677813 49.610516;8.6776176666679 49.6110441585727;8.67612509077007 49.6078494074901;8.676171 49.607906;8.67644 49.608067;8.67662 49.60819;8.676815 49.60826;8.676944 49.608276;8.6772585 49.608234;8.678095 49.607876;8.678726 49.607662;8.679339 49.607445;8.67975 49.60724;8.680054 49.606934;8.680191 49.60672;8.680331 49.606163;8.680682 49.60562;8.680494 49.605324;8.680442 49.60508;8.680521 49.60481;8.680542 49.604538;8.680002 49.60401;8.680416 49.60394;8.681083 49.60372;8.681507 49.603443;8.681827 49.60322;8.682009 49.603226;8.682338 49.60328;8.683452 49.60357;8.684056 49.60387;8.684551 49.603954;8.685264 49.60405;8.686239 49.604244;8.687677 49.60475;8.6893 49.605305;8.689938 49.605534;8.690449 49.605904;8.690591 49.606102;8.69089 49.606358;8.6910925 49.60664;8.691278 49.606575;8.691961 49.60535;8.6932 49.604675;8.692456 49.60372;8.692063 49.60299;8.693646 49.603714;8.695574 49.60402;8.695203 49.60317;8.695827 49.602882;8.696599 49.60289;8.695851 49.602203;8.696541 49.60162;8.696979 49.60081;8.697722 49.599983;8.698344 49.599586;8.698002 49.599354;8.696788 49.596634;8.69824 49.59649;8.697835 49.596066;8.697037 49.595135;8.696949 49.59455;8.69688 49.593502;8.696299 49.592148;8.693725 49.59136;8.692899 49.59146;8.692596 49.59028;8.692218 49.590057;8.69145 49.59026;8.6894 49.59075;8.688445 49.59081;8.68697 49.591057;8.686523 49.591;8.68348 49.589657;8.683206 49.5887;8.682804 49.588158;8.682803 49.587704;8.683206 49.587734;8.683341 49.5872;8.68347 49.585926;8.683667 49.585556;8.683408 49.585472;8.683256 49.585423;8.683071 49.58486;8.683013 49.58444;8.683024 49.58416;8.683033 49.5837;8.683085 49.581955;8.683066 49.581673;8.6832075 49.581646;8.683481 49.581593;8.6835785 49.580914;8.683494 49.58062;8.683269 49.58039;8.683093 49.58021;8.683932 49.578022;8.683919 49.577534;8.683753 49.577168;8.68354 49.577026;8.681533 49.576843;8.681523 49.576237;8.68146 49.576096;8.680366 49.575794;8.68076 49.575417;8.681019 49.575363;8.681451 49.575436;8.682206 49.57552;8.682376 49.575542;8.682921 49.57558;8.6830435 49.57559;8.683276 49.575603;8.683443 49.57562;8.683694 49.575634;8.684301 49.5756;8.684671 49.5754;8.684828 49.575066;8.68505 49.57472;8.685397 49.574593;8.684889 49.574028;8.6840105 49.57367;8.683909 49.573376;8.68388 49.57329;8.683845 49.573193;8.68382 49.572193;8.684274 49.572155;8.6845 49.57162;8.684894 49.571373;8.685895 49.570915;8.684752 49.57085;8.684495 49.570683;8.684445 49.570328;8.685344 49.569115;8.685563 49.568916;8.68599 49.569244;8.686431 49.56873;8.686505 49.56825;8.687046 49.56699;8.687265 49.566822;8.687788 49.5666;8.688061 49.566387;8.688686 49.565903;8.689343 49.56539;8.689892 49.564804;8.690531 49.564205;8.690903 49.563908;8.691231 49.563717;8.691473 49.563496;8.691853 49.562866;8.6919 49.562542;8.691778 49.562107;8.691673 49.56195;8.691403 49.561516;8.691321 49.56131;8.691277 49.561234;8.690826 49.56103;8.690505 49.56076;8.690425 49.56041;8.690432 49.56006;8.690524 49.559734;8.691105 49.558643;8.691156 49.55825;8.690987 49.558083;8.690645 49.55788;8.690697 49.55779;8.690792 49.557625;8.69091 49.55742;8.690807 49.55713;8.690397 49.555954;8.690895 49.555847;8.691548 49.55561;8.692094 49.555305;8.693622 49.55331;8.694293 49.55319;8.694685 49.55301;8.695298 49.552578;8.695583 49.55233;8.696371 49.551765;8.69661 49.55147;8.696746 49.55112;8.6967945 49.5508;8.697103 49.550465;8.6981325 49.549644;8.69829 49.54932;8.698339 49.5489;8.699994 49.549274;8.700152 49.54931;8.701079 49.549473;8.701321 49.549274;8.701795 49.549267;8.70218 49.549324;8.70198 49.549644;8.702586 49.549763;8.702704 49.549778;8.703513 49.549885;8.703836 49.54977;8.703922 49.549744;8.70447 49.5492;8.704855 49.548553;8.704537 49.54782;8.704913 49.547813;8.705854 49.547867;8.706029 49.547874;8.70499 49.54674;8.704615 49.546112;8.7045 49.54538;8.704138 49.545082;8.703927 49.544827;8.703845 49.54456;8.703736 49.543434;8.703793 49.54268;8.704053 49.5425;8.704264 49.54236;8.706477 49.542114;8.706257 49.541805;8.705375 49.540474;8.705581 49.540108;8.705536 49.54002;8.705345 49.539852;8.705222 49.53943;8.704899 49.53919;8.704493 49.539;8.704033 49.53846;8.703789 49.538174;8.703453 49.5378;8.703306 49.537533;8.703227 49.537025;8.703042 49.536377;8.702768 49.535763;8.702686 49.53563;8.70257 49.53538;8.702541 49.535236;8.70265 49.535168;8.702821 49.535183;8.703123 49.53531;8.703553 49.535454;8.703873 49.5356;8.704088 49.535835;8.704427 49.53605;8.704795 49.53618;8.705289 49.53631;8.7054 49.536316;8.705894 49.536396;8.706476 49.536385;8.707106 49.53633;8.707134 49.535797;8.707751 49.535046;8.708668 49.534348;8.708974 49.534195;8.709496 49.53403;8.70967 49.533905;8.709716 49.533737;8.70975 49.532906;8.709862 49.532528;8.710018 49.532333;8.710345 49.53215;8.710736 49.532;8.711127 49.531902;8.711992 49.53177;8.713545 49.53196;8.715076 49.53218;8.715304 49.52854;8.715838 49.528526;8.716774 49.528496;8.715663 49.529022;8.715559 49.530205;8.715593 49.53085;8.715818 49.531696;8.716174 49.532482;8.716379 49.533188;8.716485 49.53335;8.716593 49.533524;8.716758 49.53378;8.719562 49.532726;8.720061 49.532578;8.720519 49.532314;8.720979 49.53195;8.721238 49.531857;8.721758 49.53187;8.72217 49.531757;8.722432 49.531597;8.722543 49.53143;8.722611 49.53123;8.722571 49.531006;8.721107 49.529213;8.722253 49.527687;8.7224245 49.527527;8.722779 49.5272;8.723476 49.52685;8.724219 49.52632;8.724588 49.5258;8.72546 49.52567;8.725938 49.525517;8.726179 49.525337;8.727301 49.52547;8.72797 49.525417;8.72862 49.52531;8.729097 49.525154;8.729574 49.52512;8.730134 49.525276;8.731226 49.52585;8.731699 49.526047;8.732045 49.526077;8.732261 49.52602;8.732768 49.52542;8.733051 49.52524;8.733506 49.52519;8.733857 49.525204;8.733978 49.525043;8.733944 49.524796;8.733994 49.52429;8.734232 49.522884;8.734153 49.52238;8.733968 49.521748;8.733737 49.52131;8.733613 49.520954;8.733283 49.520996;8.731486 49.52127;8.730119 49.521584;8.728901 49.521996;8.727789 49.52258;8.727441 49.522717;8.727159 49.522755;8.7267065 49.52271;8.725667 49.522816;8.725236 49.522728;8.724808 49.5225;8.724619 49.522175;8.724248 49.521187;8.724292 49.521103;8.726565 49.520966;8.727291 49.51899;8.727425 49.51885;8.72757 49.518692;8.727733 49.51851;8.727946 49.51832;8.728745 49.51842;8.729129 49.51845;8.730773 49.518578;8.731614 49.518696;8.732392 49.518646;8.733244 49.518345;8.7333765 49.518307;8.733458 49.518288;8.734119 49.518696;8.734712 49.518486;8.734787 49.519104;8.735197 49.51923;8.735388 49.51929;8.735671 49.51917;8.736648 49.51902;8.737165 49.51905;8.737505 49.51931;8.737912 49.519913;8.738243 49.52041;8.738638 49.521214;8.738647 49.521942;8.738618 49.52231;8.738679 49.522533;8.739384 49.52303;8.740008 49.523163;8.740133 49.523167;8.74165 49.5232;8.743206 49.523087;8.74364 49.52298;8.744115 49.523026;8.744436 49.523277;8.744802 49.52334;8.744854 49.52279;8.744945 49.52251;8.745336 49.522457;8.746098 49.522152;8.746856 49.522076;8.746894 49.522354;8.747821 49.52242;8.748425 49.522495;8.749295 49.52212;8.750966 49.521767;8.751357 49.521587;8.751733 49.5211;8.752349 49.5205;8.752612 49.52029;8.753004 49.52017;8.753616 49.51992;8.754568 49.51849;8.756719 49.517635;8.757155 49.51737;8.757334 49.517216;8.757401 49.517162;8.757986 49.516815;8.758535 49.516556;8.759253 49.516266;8.761289 49.515984;8.762369 49.515778;8.763497 49.515507;8.766042 49.514744;8.766309 49.51475;8.766671 49.514774;8.768049 49.515285;8.768536 49.515465;8.770464 49.51636;8.770587 49.516453;8.771385 49.517033;8.771571 49.517166;8.7721195 49.51786;8.772898 49.517883;8.774002 49.51775;8.77402596610089 49.517749480128;8.753989 49.606009;8.69210355115638 49.6207567767541-8.67602436092463 49.6076338025194;8.67577854642737 49.6071076543132;8.676015 49.607166;8.676085 49.60726;8.67602436092463 49.6076338025194',
'8.847406 49.635484;8.753989 49.606009;8.77402596610089 49.517749480128;8.775385 49.51772;8.776946 49.51763;8.778589 49.51739;8.78017 49.516212;8.780588 49.515697;8.780807 49.515427;8.781188 49.51512;8.781315 49.515026;8.781872 49.51475;8.782617 49.51438;8.782753 49.51432;8.782998 49.51423;8.783275 49.514126;8.783751 49.514046;8.783875 49.51427;8.784831 49.51411;8.784856 49.51386;8.785853 49.513783;8.785957 49.51399;8.786908 49.513985;8.787019 49.51379;8.788035 49.51381;8.788054 49.51394;8.788852 49.514015;8.789006 49.51379;8.789956 49.513824;8.789974 49.514038;8.790469 49.514137;8.790902 49.5142;8.791099 49.51396;8.791532 49.513947;8.791657 49.51412;8.792072 49.513897;8.793682 49.513348;8.795047 49.51283;8.795859 49.51246;8.796659 49.512245;8.797244 49.51225;8.798429 49.511288;8.798247 49.511723;8.797915 49.512173;8.797409 49.512745;8.797286 49.513027;8.797159 49.513367;8.797028 49.513687;8.796935 49.514088;8.796742 49.514942;8.796724 49.515247;8.796775 49.515503;8.796795 49.515675;8.796834 49.515842;8.7969675 49.516155;8.797109 49.516357;8.797197 49.51653;8.797403 49.516834;8.797506 49.51704;8.797638 49.517284;8.797721 49.517387;8.797792 49.51748;8.797856 49.517582;8.797871 49.517643;8.797998 49.517845;8.798297 49.518337;8.798616 49.518753;8.798879 49.51895;8.799055 49.519066;8.799999 49.519527;8.800079 49.519573;8.802362 49.520977;8.802854 49.521202;8.802908 49.521862;8.804014 49.522797;8.804164 49.52288;8.805897 49.523838;8.806926 49.52428;8.808168 49.524952;8.809618 49.526047;8.810602 49.526546;8.8118515 49.526794;8.812238 49.526752;8.812522 49.52656;8.812853 49.526337;8.813619 49.525864;8.814057 49.525475;8.814376 49.525448;8.814428 49.525265;8.814496 49.525055;8.814263 49.524914;8.814417 49.524662;8.814826 49.52475;8.815421 49.524094;8.815621 49.5238;8.815841 49.523575;8.816146 49.523464;8.816533 49.523525;8.816551 49.52375;8.816199 49.524086;8.816003 49.524197;8.816143 49.524815;8.816333 49.525043;8.816662 49.52515;8.816885 49.525166;8.817043 49.5252;8.817844 49.525124;8.818343 49.525024;8.818731 49.525032;8.819317 49.52492;8.819816 49.52487;8.820293 49.524734;8.82075 49.524555;8.821161 49.524517;8.821572 49.52452;8.822157 49.524384;8.822789 49.524117;8.823102 49.523857;8.823271 49.523716;8.8211 49.523098;8.820625 49.52309;8.82032 49.52316;8.820085 49.523087;8.819365 49.52234;8.818919 49.52168;8.818776 49.521267;8.818804 49.52091;8.818914 49.520588;8.818986 49.520195;8.819326 49.519585;8.818938 49.519455;8.81916 49.519173;8.819508 49.518875;8.819839 49.518684;8.820492 49.518185;8.82052 49.517845;8.820148 49.517117;8.819958 49.51682;8.81969 49.51611;8.820187 49.516132;8.820287 49.515347;8.820559 49.51473;8.820959 49.514027;8.821229 49.51336;8.821211 49.513218;8.82046 49.513016;8.820326 49.51318;8.819534 49.5127;8.818937 49.512287;8.818834 49.512016;8.818862 49.511612;8.819231 49.510323;8.8193035 49.50993;8.819242 49.509747;8.818964 49.50953;8.818046 49.50895;8.818372 49.50878;8.818485 49.50856;8.818404 49.508247;8.817723 49.50769;8.817236 49.507145;8.81709 49.50689;8.816988 49.50647;8.816973 49.506104;8.816968 49.50595;8.817044 49.505753;8.817439 49.505474;8.818093 49.505154;8.817861 49.504845;8.818203 49.504524;8.819179 49.503616;8.821373 49.501667;8.823281 49.5;8.823525 49.499786;8.82452 49.498943;8.824639 49.498837;8.825909 49.497627;8.828705 49.49524;8.830226 49.494003;8.830493 49.493916;8.830385 49.49351;8.830409 49.493366;8.830639 49.493103;8.830743 49.492977;8.831173 49.492287;8.8312645 49.492058;8.831288 49.491726;8.831363 49.491585;8.831468 49.491493;8.831689 49.49141;8.831958 49.491425;8.832245 49.491528;8.832466 49.49165;8.833016 49.491947;8.833277 49.491657;8.83335 49.49158;8.833572 49.49133;8.833992 49.49152;8.835212 49.491837;8.835375 49.491962;8.835542 49.49209;8.835966 49.492416;8.836764 49.492893;8.837052 49.493355;8.838358 49.49405;8.838536 49.494175;8.838536 49.49434;8.838492 49.494484;8.837891 49.49496;8.837537 49.495365;8.83807 49.495743;8.838756 49.496525;8.838291 49.49668;8.838579 49.4971;8.838689 49.49737;8.838732 49.497704;8.838578 49.498837;8.838643 49.498894;8.838954 49.49891;8.839197 49.498837;8.83953 49.49865;8.83993 49.498375;8.840286 49.498245;8.84064 49.498245;8.84208 49.498432;8.842325 49.498013;8.842791 49.49813;8.843123 49.498173;8.843478 49.498203;8.843679 49.498142;8.843989 49.498;8.844077 49.497883;8.844255 49.497265;8.844965 49.49764;8.845186 49.4978;8.845237 49.498028;8.845114 49.49811;8.844985 49.498203;8.84492 49.498505;8.845 49.49888;8.844675 49.499157;8.844519 49.499496;8.844535 49.499786;8.844609 49.5;8.84468 49.5002;8.844978 49.50059;8.845083 49.500694;8.845211 49.50075;8.84556 49.500755;8.846773 49.500675;8.847621 49.501755;8.848248 49.50159;8.849572 49.501247;8.850057 49.501163;8.851182 49.501144;8.852997 49.501266;8.853778 49.501244;8.85508 49.501156;8.855837 49.501133;8.856681 49.501163;8.856846 49.501175;8.858728 49.501705;8.859972 49.50219;8.86111 49.50262;8.86285 49.503063;8.864474 49.503414;8.865419 49.50356;8.867407 49.50372;8.869159 49.503788;8.870545 49.503872;8.87123 49.50391;8.871325 49.50384;8.871523 49.50384;8.871594 49.503952;8.872284 49.50407;8.873629 49.504326;8.87446 49.504612;8.875872 49.505062;8.876621 49.50527;8.876734 49.505222;8.876952 49.50526;8.877038 49.505383;8.877311 49.505444;8.877479 49.505352;8.877584 49.505486;8.87869 49.505703;8.878767 49.505646;8.878896 49.5056;8.879093 49.50572;8.880551 49.505882;8.881826 49.50601;8.883003 49.50607;8.883408 49.50604;8.883426 49.505966;8.883538 49.50593;8.883665 49.505947;8.883773 49.50601;8.883884 49.50595;8.883958 49.505913;8.88407 49.505905;8.88423 49.50599;8.884982 49.505928;8.885625 49.50583;8.886678 49.505512;8.887567 49.50519;8.887598 49.50508;8.8876915 49.505005;8.887891 49.505047;8.890041 49.50421;8.889989 49.5041;8.890082 49.504044;8.890319 49.50408;8.89069236091138 49.503934953315;8.913106 49.511397;8.91248 49.513981;8.847406 49.635484',
'8.993265 49.657042;8.91248 49.513981;8.913106 49.511397;8.94685023263156 49.4849764501249;8.947808 49.484806;8.948657 49.48453;8.949086 49.484253;8.949789 49.483986;8.950443 49.484077;8.95118 49.483654;8.951898 49.483463;8.952141 49.483273;8.952641 49.48253;8.953618 49.481663;8.9539175 49.481476;8.954072 49.481476;8.954359 49.48161;8.954465 49.481777;8.954242 49.48244;8.954294 49.483105;8.954636 49.483788;8.954268 49.48389;8.9529915 49.484375;8.952366 49.48479;8.95156 49.485447;8.951031 49.485962;8.950666 49.48654;8.950436 49.48717;8.950393 49.487766;8.950496 49.488052;8.950627 49.488163;8.951596 49.48894;8.951527 49.489544;8.951498 49.490387;8.951712 49.491417;8.951974 49.49179;8.952674 49.492157;8.953144 49.49233;8.954461 49.492836;8.955479 49.493073;8.955638 49.493176;8.955751 49.493103;8.955895 49.493168;8.9558735 49.493286;8.956921 49.494473;8.957893 49.49553;8.956246 49.49757;8.955219 49.498837;8.95467 49.499386;8.952821 49.500904;8.951416 49.501965;8.951264 49.502167;8.951159 49.50313;8.951261 49.50364;8.951702 49.505264;8.953264 49.504566;8.954378 49.504044;8.955934 49.503445;8.956728 49.50316;8.957435 49.5028;8.957896 49.502647;8.958543 49.502983;8.958776 49.503162;8.958897 49.50338;8.959037 49.503548;8.959271 49.503647;8.959857 49.50363;8.960187 49.503624;8.960465 49.50352;8.960397 49.503326;8.960182 49.503197;8.960626 49.502804;8.96086 49.502598;8.961633 49.50187;8.962729 49.501553;8.963226 49.501457;8.9635935 49.50145;8.964408 49.501663;8.965121 49.501656;8.965794 49.50151;8.967514 49.50139;8.968446 49.50145;8.971374 49.502186;8.972989 49.50258;8.974703 49.50301;8.975247 49.503113;8.975993 49.503242;8.976704 49.503304;8.977396 49.50337;8.976889 49.50436;8.976817 49.504627;8.976881 49.504913;8.97727 49.505325;8.97762 49.505802;8.977748 49.506668;8.977793 49.507515;8.977806 49.507732;8.977981 49.508217;8.978544 49.50896;8.979622 49.509243;8.980857 49.509518;8.981318 49.509663;8.981751 49.509888;8.982322 49.510006;8.983144 49.510017;8.984575 49.510162;8.98514 49.510204;8.985825 49.51025;8.985998 49.510197;8.986353 49.50969;8.986423 49.509495;8.98648 49.508595;8.986622 49.50792;8.987003 49.50709;8.987491 49.506504;8.988719 49.50543;8.989638 49.50493;8.990161 49.50469;8.990663 49.5044;8.991166 49.504177;8.99158 49.50394;8.991889 49.50365;8.992112 49.50331;8.992198 49.50327;8.992608 49.503372;8.993384 49.503654;8.995547 49.504185;8.996403 49.504395;8.9978485 49.504673;8.998993 49.504765;8.9992 49.50468;8.99929 49.50452;8.999275 49.504246;8.999999 49.504326;9.002166 49.504574;9.002924 49.504562;9.00403 49.50448;9.00507 49.504333;9.005746 49.504086;9.006382 49.503635;9.007161 49.502995;9.007239 49.50293;9.008154 49.502625;9.00909 49.502365;9.009825 49.50233;9.010205 49.50236;9.010386 49.502377;9.010453 49.502346;9.010654 49.502014;9.011158 49.501633;9.011684 49.50133;9.012209 49.501026;9.012343 49.500847;9.012258 49.500446;9.012069 49.500416;9.011924 49.500095;9.011778 49.5;9.011647 49.499912;9.011499 49.499695;9.011482 49.4995;9.011656 49.499348;9.012934 49.499332;9.013498 49.499195;9.014283 49.498928;9.015315 49.49863;9.015625 49.498455;9.016135 49.498337;9.016269 49.498337;9.016449 49.49841;9.016714 49.49844;9.017069 49.49839;9.017359 49.498432;9.017669 49.498405;9.018784 49.498558;9.019493 49.49853;9.019738 49.498547;9.019961 49.4986;9.020138 49.498672;9.020495 49.49863;9.020627 49.498596;9.020782 49.498528;9.020894 49.498425;9.0210705 49.498383;9.021493 49.498367;9.02176 49.49841;9.022005 49.49839;9.02285 49.498463;9.023004 49.498447;9.024317 49.49849;9.024651 49.498573;9.025251 49.498672;9.025743 49.498844;9.026431 49.498917;9.0265665 49.498783;9.026764 49.49877;9.027007 49.49855;9.027142 49.498524;9.027852 49.49865;9.027987 49.49865;9.02834 49.498463;9.028674 49.498413;9.029495 49.4984;9.030208 49.49847;9.0310755 49.498657;9.031543 49.498783;9.031722 49.498856;9.032412 49.498928;9.032522 49.4988;9.032766 49.49866;9.032854 49.498634;9.033032 49.498634;9.033343 49.49869;9.03359 49.498795;9.03382 49.498978;9.035327 49.49931;9.036164 49.499428;9.037014 49.49957;9.037657 49.499683;9.038106 49.49965;9.03835 49.49963;9.039592 49.499073;9.040095 49.498886;9.0402975 49.498886;9.041372 49.498882;9.041622 49.49908;9.041712 49.49915;9.041796 49.49925;9.041883 49.499348;9.041965 49.499443;9.042152 49.49987;9.042384 49.5;9.042646 49.50014;9.0434 49.50072;9.043211 49.50106;9.043203 49.50155;9.043391 49.501766;9.042739 49.503094;9.042321 49.503487;9.042228 49.503784;9.042049 49.505215;9.041811 49.506393;9.041914 49.50659;9.042577 49.50693;9.043048 49.507263;9.043495 49.507435;9.0437565 49.507538;9.044141 49.50776;9.044957 49.50805;9.045622 49.508377;9.04594 49.508705;9.045951 49.5092;9.046272 49.50943;9.046594 49.5096;9.047111 49.509773;9.047319 49.5102;9.04729 49.510563;9.047392 49.510876;9.047645 49.5113;9.047914 49.511833;9.048596 49.512432;9.049151 49.51273;9.049493 49.512985;9.049639 49.513283;9.049495 49.514084;9.049143 49.514393;9.048918 49.514744;9.048521 49.5152;9.048342 49.51551;9.048334 49.515987;9.048494 49.516666;9.049054 49.517906;9.049004 49.518257;9.049215 49.51857;9.049555 49.518826;9.049839 49.51984;9.049987 49.52001;9.050638 49.52047;9.051531 49.520756;9.054331 49.521397;9.055198 49.521404;9.055934 49.521324;9.056799 49.521416;9.057486 49.5217;9.057825 49.522038;9.058807 49.522797;9.058706 49.52356;9.05868 49.52375;9.058739 49.52409;9.0587 49.524746;9.058787 49.525;9.05893 49.525227;9.059036 49.525578;9.059561 49.526432;9.060044 49.526947;9.060389 49.52708;9.060909 49.527225;9.062063 49.52777;9.062449 49.527897;9.062623 49.52811;9.062789 49.528473;9.063062 49.528835;9.063532 49.529175;9.063774 49.53008;9.063945 49.530224;9.064399 49.530254;9.065461 49.53022;9.066217 49.53028;9.066411 49.529198;9.066529 49.528667;9.066969 49.528286;9.068435 49.52723;9.069024 49.526966;9.070072 49.526585;9.070551 49.526474;9.071303 49.52653;9.072074 49.52657;9.072452 49.526485;9.072691 49.526405;9.07326 49.52606;9.074048 49.525826;9.07619 49.52559;9.076442 49.525555;9.078081 49.52529;9.078235 49.524944;9.07839 49.524734;9.079119 49.524796;9.08101 49.525326;9.082671 49.52553;9.083405 49.52611;9.083636 49.52619;9.084044 49.526295;9.084742 49.526142;9.085369 49.526108;9.085908 49.526154;9.08641 49.526005;9.086779 49.52595;9.087103 49.52594;9.0878 49.525692;9.088474 49.52554;9.090959 49.52566;9.09148 49.52555;9.092235 49.525486;9.096297 49.525993;9.09965237598352 49.5261900895037;9.08915868785261 49.5418297605545;9.089151 49.541832;9.088259 49.541992;9.087626 49.542355;9.087302 49.542324;9.087127 49.542377;9.086652 49.542316;9.08611 49.54242;9.085785 49.54244;9.085047 49.542614;9.084603 49.543118;9.083837 49.54359;9.084315 49.54348;9.084813 49.543484;9.085266 49.543545;9.08537 49.543755;9.085564 49.543865;9.086155 49.544605;9.08607 49.54464;9.086044 49.544865;9.086026 49.544918;9.085792 49.545647;9.08559 49.54594;9.085674 49.546112;9.085823 49.54621;9.085968 49.546577;9.0859713386725 49.5465801487954;9.08059057536405 49.5545995760069;9.080511 49.55465;9.080442 49.55479;9.080442 49.5548210110059;9.07885364001356 49.5571882843028;9.078555 49.55732;9.07812 49.55744;9.07764 49.55769;9.077182 49.557888;9.07707 49.55804;9.077003 49.558224;9.077037 49.558674;9.076923 49.5589;9.075914 49.55962;9.075676 49.55962;9.075526 49.559563;9.075351 49.5596;9.075045 49.559837;9.074782 49.55996;9.074538 49.56034;9.074511 49.560566;9.074443 49.560677;9.074419 49.560844;9.074519 49.561237;9.07425 49.561787;9.073986 49.56197;9.073029 49.562294;9.071872 49.562767;9.071129 49.56317;9.070838 49.563675;9.070675 49.564274;9.070716 49.564404;9.070756 49.564457;9.0708275 49.56453;9.070832 49.56475;9.070617 49.565075;9.070652 49.565197;9.070723 49.565277;9.070841 49.565628;9.070908 49.565823;9.070946 49.56594;9.071075 49.56603;9.071223 49.56614;9.071327 49.566193;9.071969 49.566536;9.07247562809678 49.5666939992709;9.01219 49.656543;8.993265 49.657042-9.09985970594411 49.5258810873357;9.099999 49.52547;9.100144 49.525043;9.101383 49.520313;9.10148 49.519806;9.102118 49.51932;9.104741 49.51777;9.105226 49.517418;9.105846 49.51658;9.106115 49.516148;9.1063175 49.51574;9.106327 49.51522;9.106097 49.51484;9.10531 49.513004;9.105189 49.51254;9.105155 49.512047;9.105194 49.511105;9.105287 49.51078;9.105668 49.510124;9.105978 49.509747;9.106481 49.509583;9.107061 49.509693;9.109149 49.510292;9.11012535617339 49.5105812813279;9.09985970594411 49.5258810873357',
'8.913106 49.511397;8.89069236091138 49.503934953315;8.890875 49.503864;8.890987 49.503796;8.891078 49.50376;8.891222 49.503834;8.89122 49.503918;8.892551 49.503155;8.892518 49.50306;8.892594 49.50299;8.892963 49.5029;8.893335 49.502693;8.893667 49.502632;8.894235 49.50262;8.89513 49.50261;8.895422 49.502632;8.895496 49.50258;8.8956785 49.502567;8.895744 49.502712;8.896668 49.50307;8.8971815 49.5033;8.897689 49.503426;8.898218 49.503445;8.898659 49.50339;8.898827 49.5033;8.899083 49.50325;8.8995 49.503353;8.899762 49.503574;8.900038 49.50324;8.9000435 49.50312;8.89992 49.502975;8.900009 49.502487;8.899859 49.502567;8.899581 49.502663;8.89933 49.502586;8.89917 49.50242;8.899138 49.502296;8.89927 49.50217;8.8994465 49.502106;8.898897 49.501587;8.898768 49.500816;8.898564 49.50035;8.898349 49.499634;8.898298 49.49899;8.898666 49.498642;8.898717 49.498383;8.898386 49.498367;8.898354 49.498257;8.898055 49.498043;8.897788 49.498;8.897218 49.49788;8.897141 49.49771;8.897282 49.497486;8.897274 49.49718;8.89774 49.497204;8.897834 49.49705;8.897822 49.496964;8.897605 49.49687;8.8974085 49.49676;8.897433 49.4966;8.898017 49.496235;8.898 49.49621;8.898648 49.495827;8.899261 49.495758;8.899999 49.49548;8.90015 49.495403;8.900316 49.495308;8.900445 49.4949;8.900899 49.494476;8.900868 49.494324;8.900963 49.49419;8.900672 49.494164;8.900424 49.49359;8.900541 49.493465;8.900919 49.493286;8.901049 49.493034;8.900974 49.492752;8.900951 49.491848;8.90069 49.491394;8.900659 49.491013;8.900233 49.490593;8.900016 49.490517;8.899876 49.490364;8.899864 49.49016;8.899766 49.490044;8.899802 49.489548;8.90011 49.488537;8.900467 49.48821;8.900614 49.487896;8.900416 49.487305;8.900441 49.486412;8.9007225 49.485237;8.900794 49.48471;8.900689 49.484596;8.900144 49.484535;8.899739 49.484417;8.899401 49.48432;8.898912 49.48366;8.898696 49.48355;8.897653 49.483326;8.896803 49.483078;8.8957615 49.482502;8.894536 49.48179;8.894038 49.4815;8.893817 49.481373;8.892849 49.48082;8.891501 49.480137;8.890555 49.47948;8.890165 49.479107;8.890123 49.478703;8.890182 49.478363;8.890237 49.477806;8.890176 49.477448;8.890031 49.47688;8.889954 49.476486;8.889993 49.475826;8.8899145 49.47544;8.8897505 49.475197;8.889589 49.47505;8.88889 49.474686;8.887944 49.47426;8.886115 49.473515;8.886106 49.47349;8.885894 49.47301;8.885683 49.472794;8.885598 49.472576;8.885387 49.472313;8.885353 49.472286;8.885121 49.472115;8.884224 49.471638;8.88333 49.47131;8.8827305 49.471222;8.882359 49.470917;8.882052 49.470806;8.881758 49.47079;8.881505 49.470703;8.881476 49.47049;8.881301 49.470257;8.881052 49.470043;8.880008 49.46932;8.879027 49.46864;8.877489 49.467396;8.876926 49.46679;8.876623 49.466537;8.875855 49.466545;8.874486 49.466286;8.872418 49.46584;8.871389 49.46551;8.869731 49.46509;8.869176 49.464973;8.866721 49.464455;8.866102 49.464375;8.864701 49.46477;8.863354 49.465168;8.862173 49.465508;8.862211 49.466007;8.862196 49.46645;8.862523 49.466915;8.8626375 49.46697;8.862897 49.467377;8.863048 49.46782;8.8630905 49.46869;8.863152 49.469048;8.863904 49.470524;8.865355 49.472706;8.866116 49.473698;8.866418 49.47422;8.86639 49.474483;8.866144 49.474728;8.865134 49.47543;8.864701 49.475803;8.863633 49.476818;8.86288 49.47751;8.862317 49.477913;8.8618145 49.478195;8.861198 49.478546;8.860795 49.478878;8.860722 49.478996;8.860544 49.47929;8.860263 49.48;8.860056 49.480713;8.859207 49.481255;8.858115 49.481655;8.856157 49.48222;8.855458 49.48239;8.853766 49.482674;8.853085 49.48288;8.851962 49.48368;8.851473 49.483395;8.848814 49.481712;8.84875 49.480625;8.848195 49.480267;8.847729 49.47973;8.847219 49.47951;8.846865 49.47925;8.846555 49.47876;8.844983 49.478065;8.844229 49.477627;8.84368 49.477356;8.842212 49.476643;8.841591 49.476295;8.841252 49.476025;8.839863 49.474903;8.839465 49.474705;8.839219 49.47473;8.839064 49.474876;8.838665 49.475426;8.838485 49.4755;8.838265 49.475513;8.837999 49.4755;8.837689 49.475338;8.8372 49.475006;8.83689 49.474846;8.8364 49.474648;8.83618 49.474503;8.835094 49.473618;8.834447 49.47323;8.833941 49.472923;8.833563 49.47265;8.833201 49.472424;8.832811 49.472187;8.832305 49.471973;8.831973 49.47183;8.831109 49.471695;8.830287 49.471603;8.829667 49.471474;8.828938 49.471237;8.828206 49.47089;8.827457 49.470352;8.827126 49.470062;8.826512 49.46941;8.8264 49.469234;8.825222 49.467094;8.825115 49.466732;8.825095 49.46636;8.825144 49.465908;8.82515 49.46539;8.825107 49.465;8.824804 49.464207;8.824171 49.462948;8.824063 49.462616;8.828405 49.461098;8.828629 49.460926;8.828807 49.460667;8.829825 49.45878;8.830183 49.45823;8.830522 49.45783;8.831394 49.45694;8.832425 49.45598;8.832491 49.455776;8.832402 49.4554;8.832426 49.45517;8.832441 49.45487;8.832538 49.452824;8.832601 49.452576;8.832912 49.45217;8.833245 49.451813;8.833386 49.4517;8.833624 49.451492;8.834287 49.45083;8.834576 49.450264;8.834602 49.450138;8.83449 49.449863;8.83376 49.44866;8.832741 49.447;8.832587 49.446636;8.832565 49.446392;8.832588 49.445946;8.8326845 49.445484;8.832719 49.44531;8.833344 49.443474;8.833543 49.442806;8.833564 49.442505;8.833499 49.441677;8.833234 49.439598;8.833014 49.43821;8.832904 49.43779;8.832395 49.43682;8.833461 49.43594;8.834503 49.435074;8.835878 49.4338;8.836122 49.433628;8.836233 49.43345;8.836454 49.43326;8.836787 49.433178;8.83701 49.433193;8.837121 49.43316;8.837121 49.43308;8.837032 49.43289;8.836859 49.432312;8.836369 49.4312;8.836369 49.43072;8.836412 49.43036;8.835814 49.42958;8.835748 49.429405;8.835704 49.429;8.835526 49.42864;8.835107 49.42812;8.834507 49.427505;8.834353 49.427464;8.833821 49.427464;8.833441 49.42738;8.83287 49.427032;8.832692 49.426785;8.832538 49.42641;8.8323345 49.425747;8.83224 49.425613;8.832191 49.425545;8.831931 49.425175;8.831707 49.424854;8.831102 49.423992;8.830469 49.423187;8.830359 49.4231;8.829938 49.42294;8.828862 49.422585;8.827791 49.422222;8.82664 49.421963;8.825997 49.421844;8.82542 49.42183;8.825263 49.421825;8.824665 49.421825;8.824219 49.42191;8.822127 49.422638;8.821014 49.42307;8.820234 49.42334;8.819768 49.423397;8.819124 49.423393;8.818569 49.423336;8.817481 49.423286;8.816595 49.42317;8.815974 49.42305;8.814889 49.42273;8.814201 49.42261;8.813648 49.42245;8.813339 49.422264;8.813121 49.4219;8.812616 49.421413;8.811372 49.42138;8.810952 49.42123;8.810488 49.4209;8.808947 49.41945;8.808511 49.419724;8.808331 49.4198;8.808273 49.419884;8.808144 49.419968;8.807552 49.419746;8.807126 49.41959;8.806908 49.41945;8.80655 49.419212;8.806333 49.41902;8.806823 49.418297;8.806912 49.41798;8.806897 49.417603;8.806735 49.41704;8.806525 49.41665;8.806136 49.415913;8.806001 49.41552;8.805808 49.41511;8.805886 49.414673;8.805973 49.414215;8.8062105 49.413628;8.806791 49.413094;8.807182 49.412933;8.80745 49.412746;8.807807 49.412575;8.808296 49.41234;8.808103 49.411594;8.807312 49.41087;8.806871 49.410625;8.805916 49.410374;8.805607 49.41034;8.805164 49.41036;8.804674 49.410416;8.803295 49.410698;8.801383 49.410957;8.801775 49.41021;8.802261 49.409584;8.803932 49.407463;8.80406 49.407005;8.808365 49.40646;8.808268 49.406162;8.80784 49.40586;8.807179 49.405468;8.8059225 49.404934;8.804349 49.404213;8.803904 49.403904;8.803624 49.40359;8.803426 49.402996;8.803189 49.402943;8.803214 49.40279;8.8033695 49.402794;8.80523 49.402798;8.805889 49.40272;8.806406 49.402554;8.806926 49.402287;8.807505 49.401924;8.808063 49.401398;8.808977 49.401302;8.809219 49.40114;8.809393 49.400883;8.809204 49.40056;8.809229 49.400368;8.809927 49.400208;8.811284 49.399494;8.811866 49.399277;8.812059 49.39896;8.812326 49.398663;8.813305 49.398285;8.813976 49.3979;8.8142605 49.39763;8.814368 49.397114;8.8144865 49.396626;8.814747 49.39645;8.815318 49.39629;8.815849 49.396248;8.816706 49.396267;8.817363 49.396225;8.817844 49.396057;8.818027 49.396;8.818995 49.395504;8.819142 49.39545;8.82019 49.396248;8.820892 49.395977;8.821648 49.39577;8.822165 49.39558;8.822215 49.39565;8.823832 49.397972;8.825175 49.399956;8.825673 49.40088;8.826153 49.40203;8.82631 49.403778;8.8263855 49.405033;8.826718 49.405956;8.827188 49.406643;8.827672 49.407078;8.828226 49.40745;8.829107 49.407803;8.829433 49.40788;8.829997 49.407944;8.830817 49.407944;8.83195 49.407864;8.833326 49.407673;8.834069 49.407566;8.834881 49.40728;8.835529 49.407017;8.837089 49.40629;8.837625 49.406;8.83813 49.405685;8.838853 49.405098;8.839502 49.40425;8.839926 49.40361;8.840444 49.402386;8.84096 49.40094;8.841543 49.39983;8.842121 49.398945;8.843962 49.397675;8.844598 49.39721;8.846379 49.396294;8.848535 49.39547;8.849114 49.395344;8.849545 49.395256;8.849833 49.395214;8.850253 49.395187;8.851033 49.395294;8.852278 49.395687;8.853322 49.3961;8.855292 49.39719;8.857627 49.398495;8.857766 49.398575;8.858574 49.399048;8.859269 49.399582;8.860875 49.400578;8.862543 49.401688;8.863022 49.402077;8.863836 49.402836;8.865104 49.40414;8.866383 49.40548;8.86817 49.407364;8.869664 49.409004;8.870445 49.40992;8.871176 49.410942;8.871632 49.411545;8.87214 49.412148;8.872611 49.412514;8.873289 49.412964;8.874007 49.41328;8.876007 49.41401;8.8796625 49.415245;8.881722 49.415916;8.8829155 49.41631;8.883279 49.416462;8.884993 49.41705;8.885782 49.41654;8.887041 49.417496;8.889905 49.4195;8.890907 49.420124;8.892048 49.42095;8.892738 49.421616;8.893386 49.422398;8.894174 49.423637;8.894428 49.42416;8.894586 49.424488;8.895472 49.426346;8.895404 49.426464;8.895477 49.427536;8.896066 49.42901;8.896063 49.42933;8.896659 49.43066;8.897045 49.431957;8.897501 49.4336;8.897897 49.434593;8.898369 49.435776;8.898831 49.43722;8.899309 49.438747;8.899677 49.439465;8.900219 49.441055;8.900897 49.442932;8.901045 49.442936;8.90115 49.443054;8.901038 49.443287;8.901407 49.443714;8.901858 49.444016;8.902318 49.444324;8.90308 49.444477;8.903797 49.445427;8.904072 49.44538;8.904238 49.44535;8.903989 49.444622;8.90411 49.444275;8.904222 49.44417;8.904203 49.44368;8.904717 49.443607;8.904649 49.442604;8.904649 49.44207;8.904819 49.441357;8.904982 49.44086;8.905272 49.440365;8.905784 49.439796;8.90592 49.43957;8.90611 49.439358;8.9069 49.43919;8.907839 49.43843;8.908484 49.43794;8.909307 49.43794;8.910078 49.437748;8.911034 49.43759;8.911927 49.43762;8.913309 49.437782;8.915203 49.43821;8.917118 49.4388;8.919503 49.43956;8.921481 49.44017;8.923377 49.440826;8.923934 49.44112;8.924575 49.441605;8.924932 49.442158;8.925174 49.442852;8.925326 49.443466;8.925491 49.444576;8.925569 49.44549;8.925577 49.44669;8.92563 49.44733;8.926108 49.44827;8.9269495 49.448814;8.926713 49.44936;8.927645 49.449875;8.928879 49.450104;8.929471 49.450382;8.929692 49.4504;8.930077 49.450336;8.930916 49.45037;8.931461 49.450424;8.932027 49.450443;8.934393 49.450546;8.936697 49.45061;8.937826 49.45071;8.938754 49.45081;8.942272 49.45128;8.943609 49.451725;8.94471 49.45212;8.945005 49.452343;8.945702 49.452747;8.946543 49.453304;8.947528 49.453938;8.948243 49.45438;8.94942 49.455025;8.950015 49.45521;8.950608 49.455517;8.950996 49.45587;8.951041 49.455933;8.95114 49.45607;8.951136 49.45618;8.950982 49.456367;8.950017 49.457417;8.949509 49.45785;8.949379 49.457962;8.948972 49.4581;8.947973 49.458794;8.947421 49.458916;8.946621 49.459614;8.946414 49.45983;8.945955 49.460472;8.946046 49.460487;8.94608 49.46057;8.945967 49.46066;8.945822 49.460636;8.945517 49.461086;8.945308 49.46125;8.944739 49.46138;8.944109 49.46195;8.944018 49.462204;8.943855 49.462166;8.943273 49.4627;8.943085 49.462814;8.942577 49.46299;8.942512 49.46337;8.942963 49.46408;8.942884 49.464188;8.942347 49.46449;8.941381 49.464905;8.940939 49.465042;8.940369 49.465164;8.93997 49.465065;8.939308 49.4652;8.938906 49.4652;8.938671 49.46514;8.938181 49.46506;8.937285 49.46506;8.936898 49.465164;8.935909 49.465412;8.935532 49.46561;8.934662 49.466484;8.934369 49.467052;8.934333 49.46732;8.933995 49.467625;8.933056 49.468395;8.932753 49.46871;8.932299 49.469196;8.931988 49.469757;8.931673 49.470604;8.93216 49.470703;8.932594 49.470863;8.933228 49.47105;8.93369 49.47144;8.93427 49.4721;8.934656 49.472607;8.934775 49.473404;8.934735 49.47386;8.934427 49.474854;8.934339 49.475624;8.934336 49.47623;8.934413 49.47664;8.935032 49.477287;8.935247 49.477455;8.935606 49.477936;8.93654 49.478424;8.936818 49.478844;8.937223 49.47934;8.937921 49.4798;8.938493 49.480164;8.938988 49.48038;8.939383 49.480633;8.93968 49.480984;8.939793 49.481518;8.939461 49.482964;8.939893 49.483707;8.940428 49.484108;8.941155 49.484566;8.942355 49.485294;8.942945 49.485767;8.943292 49.48568;8.944009 49.48557;8.944653 49.48542;8.946392 49.485058;8.94685023263156 49.4849764501249;8.913106 49.511397'
];
// ########################### villages ###########################
var villages = [
'8.720886 51.041558',
'8.933333 51.1',
'9.107222 51.087778',
'9.246005 51.054305',
'8.733812 50.984576',
'9.060833 50.951944',
'9.318611 50.966944',
'9.470833 50.858056',
'9.233 50.7591',
'9.34606 50.74987',
'9.283333 50.833333',
'9.5275 50.913333',
'8.849167 50.921667',
'9.422194 51.245353',
'8.788767 51.126803',
'9.266597 51.179247',
'9.645833 51.199722',
'9.575278 51.227222',
'9.466389 51.030833',
'9.644444 51.107222',
'9.880278 51.004444',
'9.086389 51.166667',
'9.053056 51.171944',
'9.711944 50.913056',
'9.618056 50.794722',
'9.996944 50.864167',
'9.992203 50.951814',
'9.859722 50.947778',
'9.7425 50.834722',
'9.729722 51.257222',
'9.811667 51.315',
'9.939444 51.257222',
'9.796389 51.213611',
'10.177833 51.150333',
'10.126694 51.178689',
'10.166667 51.016667',
'10.058333 51.1025',
'9.972108 51.128686',
'9.579278 51.403878',
'9.817222 51.356389',
'9.408611 51.591389',
'9.594722 51.591111',
'9.499444 51.578889',
'9.656511 51.586781',
'9.662778 50.662778',
'9.800833 50.701111',
'9.860339 50.740661',
'9.640833 50.600278',
'9.845833 50.636944',
'10.033889 50.5925',
'9.475833 50.462778',
'9.514167 50.425833',
'9.670833 50.486389',
'9.8 50.466667',
'10.003056 50.506944',
'9.504444 50.591111',
'8.389167 49.681667',
'8.926097 51.472603',
'9.010047 51.475328',
'9.321111 51.506111',
'8.770556 51.360278',
'8.805856 51.361019',
'9.059153 51.383953',
'9.183333 51.416667',
'8.63 51.307222',
'8.967747 51.336667',
'8.944525 51.255086',
'9.066111 51.279167',
'9.228503 51.304014',
'8.911228 51.211469',
'8.771464 51.235381',
'8.747964 51.152439',
'8.613889 51.293333',
'8.2302 50.8264',
'8.324722 50.7475',
'8.485011 50.702022',
'8.397778 50.631944',
'8.519167 50.61',
'8.473633 50.445647',
'8.653056 50.470833',
'8.710678 50.661645',
'8.915497 50.688194',
'9.058056 50.694167',
'8.794483 50.555692',
'8.622422 50.551883',
'8.922222 50.597778',
'9.2 50.583333',
'9.026944 50.622778',
'9.262778 50.579722',
'8.974039 50.430808',
'9.275 50.483333',
'8.048333 50.539444',
'8.0025 50.505',
'8.033333 50.416667',
'8.157778 50.485',
'8.218611 50.689722',
'8.163889 50.624722',
'8.316944 50.36',
'8.223889 50.3675',
'8.361127 50.117486',
'7.892561 50.051717',
'7.947112 50.035105',
'8.133056 50.255',
'8.373889 50.273611',
'8.121111 50.0525',
'8.38777 50.040278',
'7.981917 50.141757',
'8.596111 51.025556',
'8.608611 50.923889',
'8.415278 50.858056',
'8.558611 50.825556',
'8.690556 50.81',
'8.726389 50.811667',
'8.996389 50.794167',
'8.865833 50.844722',
'8.450694 50.374889',
'8.616875 50.390264',
'8.877017 50.326283',
'9.133889 50.418333',
'9.253197 50.342937',
'9.466083 50.416258',
'9.537222 50.322222',
'9.719167 50.384167',
'8.5447 50.2794',
'8.796944 50.258889',
'8.865339 50.269542',
'9.101667 50.258333',
'9.227104 50.209662',
'9.396389 50.293611',
'9.604197 50.27034',
'8.468333 50.181667',
'8.6975 50.172222',
'8.855 50.123056',
'9.161944 50.14',
'9.28 50.179722',
'9.48034 50.12949',
'8.471677 50.039526',
'8.715833 50.012778',
'8.983889 49.971944',
'9.004734 50.042589',
'8.579722 49.928333',
'8.831389 49.826944',
'8.929167 49.949722',
'9.018056 49.888889',
'8.579722 49.718611',
'8.741944 49.7725',
'8.943547 49.769687',
'8.992465 49.720914',
'8.569722 49.697778',
'8.765802 49.68336',
'8.940833 49.620556',
'9.079465 49.653932',
'8.583333 49.6',
'8.729646 49.531643',
'8.808056 49.549444',
'8.9891 49.5933',
'8.851826 49.417974'
];
// ##################### boundaries of Hessen ########################
var hessen_boundaries = [
'50.8622;8.355477',
'50.86234;8.355271',
'50.862396;8.355193',
'50.86438;8.353709',
'50.865097;8.353168',
'50.86532;8.352932',
'50.865387;8.352629',
'50.8654;8.3521185',
'50.865097;8.349272',
'50.864758;8.346973',
'50.864643;8.346018',
'50.864597;8.3454',
'50.864628;8.345248',
'50.864983;8.344271',
'50.865215;8.343536',
'50.865322;8.342761',
'50.86539;8.341985',
'50.865532;8.340624',
'50.865604;8.339924',
'50.86565;8.338547',
'50.86565;8.336665',
'50.865532;8.336144',
'50.865253;8.335311',
'50.865078;8.334736',
'50.864998;8.33441',
'50.864754;8.333348',
'50.86441;8.331445',
'50.86422;8.330309',
'50.864017;8.329073',
'50.863968;8.328878',
'50.863663;8.328497',
'50.86382;8.327888',
'50.8635;8.326171',
'50.863342;8.324767',
'50.86326;8.324093',
'50.86324;8.323623',
'50.86305;8.323134',
'50.862602;8.322195',
'50.86228;8.321495',
'50.86176;8.320428',
'50.861427;8.319738',
'50.86136;8.319271',
'50.861393;8.318648',
'50.86145;8.31793',
'50.861477;8.317796',
'50.86152;8.317378',
'50.861607;8.316378',
'50.861744;8.314903',
'50.861816;8.313563',
'50.861835;8.312847',
'50.861824;8.312058',
'50.861786;8.311439',
'50.86169;8.310783',
'50.861313;8.309579',
'50.86097;8.308559',
'50.86106;8.306335',
'50.861076;8.305337',
'50.86148;8.3053',
'50.862514;8.305184',
'50.862953;8.305107',
'50.863716;8.305147',
'50.864365;8.305417',
'50.86482;8.304266',
'50.865776;8.301849',
'50.865868;8.301714',
'50.866623;8.301248',
'50.866776;8.301221',
'50.867336;8.30095',
'50.86767;8.300831',
'50.868164;8.300715',
'50.868237;8.300654',
'50.86841;8.300307',
'50.869007;8.299281',
'50.869785;8.298245',
'50.870747;8.296855',
'50.871075;8.296464',
'50.871227;8.296313',
'50.87135;8.296183',
'50.87151;8.295997',
'50.871597;8.295892',
'50.87189;8.295614',
'50.872417;8.295194',
'50.87457;8.29354',
'50.87659;8.292164',
'50.87743;8.29187',
'50.877903;8.291773',
'50.878437;8.29169',
'50.879227;8.291729',
'50.879883;8.291792',
'50.880108;8.291724',
'50.88044;8.291709',
'50.881435;8.292',
'50.881863;8.29198',
'50.88206;8.291783',
'50.882195;8.291287',
'50.882225;8.291022',
'50.88241;8.290032',
'50.88255;8.289217',
'50.882545;8.287862',
'50.882496;8.287695',
'50.88235;8.286385',
'50.882496;8.285851',
'50.882515;8.285529',
'50.882275;8.284806',
'50.88219;8.284582',
'50.881897;8.283788',
'50.881836;8.282464',
'50.88173;8.281171',
'50.881657;8.280045',
'50.88161;8.279428',
'50.88147;8.278849',
'50.88144;8.278567',
'50.881367;8.277949',
'50.88146;8.277739',
'50.881744;8.277028',
'50.881813;8.276912',
'50.882137;8.276481',
'50.882576;8.275801',
'50.882664;8.275421',
'50.882656;8.275007',
'50.882633;8.2737665',
'50.882587;8.273175',
'50.882397;8.2713585',
'50.882336;8.270721',
'50.88229;8.270662',
'50.880642;8.268562',
'50.880394;8.268197',
'50.88045;8.268081',
'50.880615;8.267792',
'50.88005;8.266916',
'50.87974;8.266412',
'50.87931;8.265736',
'50.878532;8.2648325',
'50.877693;8.263894',
'50.877045;8.263115',
'50.875694;8.261562',
'50.87551;8.261402',
'50.8748;8.261549',
'50.87405;8.261603',
'50.87386;8.261574',
'50.87327;8.261142',
'50.872192;8.260347',
'50.87178;8.259858',
'50.871387;8.259425',
'50.871227;8.259104',
'50.870937;8.258583',
'50.87066;8.258021',
'50.870216;8.257186',
'50.870014;8.256592',
'50.869625;8.255614',
'50.869225;8.254542',
'50.86901;8.254006',
'50.868637;8.253197',
'50.868256;8.2524805',
'50.867947;8.25194',
'50.867764;8.251667',
'50.867363;8.251328',
'50.86695;8.250935',
'50.866577;8.25067',
'50.866043;8.250282',
'50.86569;8.249941',
'50.86536;8.249653',
'50.864758;8.24861',
'50.864265;8.247777',
'50.863995;8.247301',
'50.863758;8.246823',
'50.86356;8.24638',
'50.86342;8.245823',
'50.863274;8.245191',
'50.863125;8.244313',
'50.863087;8.243619',
'50.86285;8.242953',
'50.862568;8.242572',
'50.86219;8.242082',
'50.861847;8.241666',
'50.861286;8.240978',
'50.86091;8.240507',
'50.86062;8.240323',
'50.86033;8.240186',
'50.8598;8.239873',
'50.859222;8.239507',
'50.85892;8.239314',
'50.858383;8.238682',
'50.85815;8.238337',
'50.85789;8.237934',
'50.85768;8.237531',
'50.857307;8.236667',
'50.85697;8.235978',
'50.856712;8.235479',
'50.856007;8.234046',
'50.855293;8.232839',
'50.85489;8.232184',
'50.853027;8.231607',
'50.851448;8.231082',
'50.850906;8.230882',
'50.850723;8.230572',
'50.849308;8.228517',
'50.847763;8.22624',
'50.84751;8.225575',
'50.84681;8.223804',
'50.845757;8.221088',
'50.84571;8.22066',
'50.844852;8.219347',
'50.84389;8.217662',
'50.8431;8.2163105',
'50.84255;8.215359',
'50.841885;8.2143',
'50.84136;8.21363',
'50.84069;8.212929',
'50.839874;8.212123',
'50.839268;8.211589',
'50.838554;8.210984',
'50.83806;8.210613',
'50.83763;8.210089',
'50.83723;8.209601',
'50.836983;8.209162',
'50.836746;8.208722',
'50.83662;8.208332',
'50.836468;8.206723',
'50.836372;8.205449',
'50.836258;8.204439',
'50.836113;8.203752',
'50.835976;8.203382',
'50.835735;8.202678',
'50.83557;8.202177',
'50.834732;8.200151',
'50.833958;8.198383',
'50.833916;8.198208',
'50.833817;8.197482',
'50.832947;8.196135',
'50.83231;8.195319',
'50.830532;8.193564',
'50.830307;8.192992',
'50.829906;8.191353',
'50.82907;8.188368',
'50.828716;8.187879',
'50.827568;8.186449',
'50.82642;8.184945',
'50.82434;8.182247',
'50.822456;8.180366',
'50.8223;8.180223',
'50.822105;8.18012',
'50.821926;8.180129',
'50.82125;8.18026',
'50.820244;8.180217',
'50.819977;8.180079',
'50.818844;8.17645',
'50.818657;8.176027',
'50.817635;8.174072',
'50.817444;8.1737',
'50.81739;8.173574',
'50.817284;8.173539',
'50.81705;8.17383',
'50.816334;8.174733',
'50.816154;8.174742',
'50.81336;8.173096',
'50.81248;8.172632',
'50.81071;8.171763',
'50.80852;8.170593',
'50.808365;8.1706',
'50.80816;8.170348',
'50.80706;8.169163',
'50.80676;8.168932',
'50.8063;8.168731',
'50.805847;8.168659',
'50.805744;8.16851',
'50.80544;8.167685',
'50.805084;8.167253',
'50.803555;8.165771',
'50.802868;8.164129',
'50.8013;8.160299',
'50.799706;8.156264',
'50.79897;8.154459',
'50.798218;8.153369',
'50.797554;8.151768',
'50.79731;8.150915',
'50.797287;8.150221',
'50.797344;8.1490345',
'50.797302;8.148736',
'50.79711;8.148144',
'50.79642;8.146358',
'50.796234;8.145967',
'50.796062;8.145604',
'50.795937;8.145278',
'50.795593;8.145044',
'50.794743;8.14311',
'50.79445;8.142637',
'50.79392;8.141819',
'50.79354;8.141387',
'50.79091;8.13902',
'50.790413;8.138595',
'50.790104;8.138047',
'50.789974;8.13764',
'50.789845;8.1365',
'50.7898;8.136071',
'50.78971;8.135843',
'50.789574;8.135323',
'50.789314;8.134959',
'50.78933;8.134488',
'50.789173;8.13318',
'50.789772;8.131572',
'50.789738;8.131179',
'50.78956;8.13053',
'50.789494;8.130344',
'50.78909;8.129181',
'50.788483;8.127447',
'50.78816;8.126166',
'50.788094;8.125832',
'50.788063;8.125533',
'50.78798;8.125406',
'50.787827;8.125584',
'50.787796;8.12581',
'50.78784;8.126334',
'50.787693;8.127187',
'50.78759;8.128545',
'50.787544;8.128773',
'50.7874;8.129233',
'50.78721;8.129695',
'50.787086;8.130224',
'50.786938;8.131133',
'50.786823;8.132435',
'50.78671;8.1333275',
'50.786545;8.133411',
'50.786434;8.133226',
'50.78644;8.131834',
'50.78649;8.130856',
'50.78651;8.130516',
'50.786655;8.129986',
'50.786964;8.129425',
'50.787033;8.129046',
'50.786976;8.128842',
'50.786808;8.128738',
'50.7867;8.128815',
'50.786427;8.128777',
'50.786377;8.128626',
'50.786465;8.128283',
'50.78641;8.128041',
'50.786255;8.12792',
'50.785854;8.127638',
'50.785606;8.127763',
'50.78537;8.127794',
'50.784878;8.1281',
'50.78451;8.128391',
'50.78437;8.128502',
'50.78363;8.129459',
'50.782505;8.129199',
'50.781193;8.130714',
'50.780563;8.130182',
'50.780075;8.130714',
'50.779427;8.129903',
'50.778465;8.131812',
'50.77835;8.132005',
'50.77816;8.132108',
'50.77803;8.1321535',
'50.77769;8.131927',
'50.776924;8.131532',
'50.776806;8.131632',
'50.776695;8.13269',
'50.77638;8.134041',
'50.77612;8.13488',
'50.775528;8.136208',
'50.77417;8.137909',
'50.774014;8.137878',
'50.772766;8.1386',
'50.772408;8.14076',
'50.772232;8.141281',
'50.771828;8.141638',
'50.771633;8.14161',
'50.7715;8.141936',
'50.77131;8.142002',
'50.771008;8.141736',
'50.77046;8.140561',
'50.77031;8.139722',
'50.77029;8.13884',
'50.77019;8.138528',
'50.76855;8.137053',
'50.7676;8.135992',
'50.76716;8.135357',
'50.76709;8.135515',
'50.765896;8.1381445',
'50.765713;8.138473',
'50.765427;8.138019',
'50.764614;8.139054',
'50.764305;8.139615',
'50.76391;8.140594',
'50.763767;8.14075',
'50.76357;8.1403475',
'50.763344;8.139868',
'50.763092;8.139713',
'50.76283;8.139633',
'50.76252;8.139688',
'50.76245;8.139763',
'50.762466;8.13995',
'50.76259;8.140191',
'50.76316;8.140781',
'50.763573;8.14106',
'50.763836;8.141122',
'50.76379;8.141331',
'50.763523;8.142171',
'50.76318;8.142864',
'50.762806;8.143166',
'50.76253;8.143141',
'50.76233;8.143114',
'50.762497;8.144344',
'50.76316;8.144197',
'50.763374;8.144169',
'50.763596;8.144551',
'50.76376;8.144938',
'50.763897;8.145831',
'50.763924;8.146696',
'50.76282;8.146882',
'50.762573;8.147026',
'50.762486;8.147332',
'50.762527;8.148193',
'50.762424;8.148386',
'50.762302;8.148823',
'50.76246;8.150093',
'50.762383;8.150603',
'50.76216;8.151047',
'50.76185;8.151476',
'50.761845;8.152393',
'50.761345;8.152999',
'50.761055;8.152769',
'50.760845;8.1525',
'50.760754;8.152374',
'50.760593;8.15197',
'50.758724;8.148552',
'50.758453;8.148679',
'50.758137;8.1490135',
'50.757908;8.148819',
'50.757137;8.147768',
'50.756702;8.147546',
'50.756298;8.147472',
'50.756115;8.147332',
'50.755558;8.146964',
'50.75514;8.146835',
'50.7547;8.146839',
'50.754517;8.147168',
'50.75468;8.147521',
'50.755413;8.149095',
'50.755527;8.149502',
'50.75568;8.15049',
'50.75563;8.150999',
'50.755516;8.151285',
'50.754696;8.15253',
'50.754486;8.152782',
'50.753845;8.152946',
'50.752525;8.152941',
'50.75235;8.154266',
'50.75213;8.154028',
'50.75182;8.153932',
'50.751698;8.153791',
'50.75183;8.153201',
'50.75124;8.152913',
'50.751118;8.152918',
'50.750996;8.153131',
'50.750946;8.153565',
'50.75087;8.153626',
'50.750584;8.153604',
'50.75011;8.153662',
'50.74894;8.154208',
'50.74838;8.154706',
'50.74881;8.157539',
'50.746876;8.160811',
'50.745117;8.163509',
'50.74508;8.163641',
'50.745;8.163725',
'50.74481;8.163191',
'50.743465;8.159691',
'50.743248;8.159606',
'50.741566;8.160707',
'50.741547;8.16097',
'50.741993;8.161718',
'50.743;8.163317',
'50.742393;8.164388',
'50.742126;8.164865',
'50.74174;8.164545',
'50.741535;8.164499',
'50.741196;8.164667',
'50.740784;8.164368',
'50.740414;8.164443',
'50.739742;8.164777',
'50.73878;8.165287',
'50.736126;8.166697',
'50.73603;8.166746',
'50.735653;8.1668215',
'50.73271;8.166254',
'50.73242;8.166101',
'50.73215;8.165756',
'50.731403;8.164031',
'50.73113;8.1635',
'50.730865;8.163402',
'50.72984;8.163173',
'50.729767;8.163156',
'50.729053;8.16276',
'50.728313;8.16214',
'50.726334;8.159348',
'50.726143;8.159079',
'50.726025;8.159137',
'50.725918;8.159255',
'50.7253;8.160447',
'50.724373;8.159312',
'50.723507;8.158456',
'50.721375;8.156612',
'50.72;8.155837',
'50.719913;8.155695',
'50.719902;8.155579',
'50.719692;8.155191',
'50.718517;8.154784',
'50.71762;8.154041',
'50.71506;8.151896',
'50.71481;8.151706',
'50.714657;8.15162',
'50.714523;8.151628',
'50.714314;8.151693',
'50.713364;8.150766',
'50.7122;8.15075',
'50.71159;8.150742',
'50.705605;8.150519',
'50.70374;8.149019',
'50.701756;8.147411',
'50.698826;8.145046',
'50.696335;8.143278',
'50.695396;8.142462',
'50.695007;8.141846',
'50.694244;8.140502',
'50.694103;8.139636',
'50.694027;8.139005',
'50.693928;8.138088',
'50.69409;8.137884',
'50.694424;8.137591',
'50.695366;8.136864',
'50.695496;8.136502',
'50.69621;8.133763',
'50.696503;8.132635',
'50.69659;8.132227',
'50.696617;8.131864',
'50.696518;8.131658',
'50.695812;8.130539',
'50.694904;8.1293745',
'50.693893;8.128255',
'50.693615;8.1279125',
'50.693237;8.127522',
'50.693024;8.127225',
'50.69288;8.126906',
'50.69278;8.12654',
'50.692387;8.126539',
'50.692158;8.126379',
'50.691895;8.126424',
'50.691734;8.126605',
'50.69133;8.126603',
'50.69103;8.126717',
'50.690796;8.126875',
'50.689304;8.127073',
'50.688595;8.127002',
'50.687614;8.126658',
'50.687603;8.126089',
'50.68721;8.1262245',
'50.68675;8.126108',
'50.686474;8.126083',
'50.68577;8.125584',
'50.685688;8.125594',
'50.68549;8.1256075',
'50.685272;8.1256485',
'50.684826;8.126013',
'50.684418;8.125988',
'50.684273;8.126189',
'50.68397;8.125983',
'50.68323;8.126049',
'50.683014;8.126116',
'50.68279;8.126074',
'50.682846;8.125664',
'50.68279;8.125346',
'50.682602;8.125254',
'50.68244;8.124913',
'50.68238;8.124616',
'50.682213;8.124433',
'50.68172;8.124523',
'50.68139;8.124294',
'50.681255;8.124089',
'50.6811;8.1237',
'50.679977;8.12261',
'50.679867;8.122498',
'50.6796;8.122078',
'50.679367;8.121967',
'50.67888;8.121734',
'50.6783;8.120776',
'50.678055;8.12048',
'50.677967;8.120444',
'50.67788;8.12041',
'50.677692;8.120274',
'50.67749;8.119952',
'50.677246;8.119702',
'50.676556;8.118586',
'50.676556;8.117925',
'50.676483;8.117447',
'50.676296;8.11674',
'50.676167;8.116466',
'50.676155;8.115874',
'50.675938;8.115737',
'50.675922;8.11503',
'50.67578;8.114484',
'50.675755;8.11396',
'50.675827;8.11355',
'50.67581;8.113096',
'50.675755;8.112754',
'50.675537;8.112632',
'50.67409;8.111815',
'50.67184;8.110691',
'50.671303;8.110462',
'50.6708;8.1104145',
'50.668262;8.109977',
'50.66806;8.1099415',
'50.667473;8.109854',
'50.666756;8.109854',
'50.661327;8.109878',
'50.660267;8.109927',
'50.65764;8.110051',
'50.65733;8.110066',
'50.653976;8.112979',
'50.65253;8.114234',
'50.652405;8.114346',
'50.652172;8.114861',
'50.65194;8.115367',
'50.651283;8.117277',
'50.650776;8.118462',
'50.650543;8.119027',
'50.65021;8.11937',
'50.64888;8.120398',
'50.64858;8.120638',
'50.64814;8.121058',
'50.645287;8.123788',
'50.645054;8.124446',
'50.64505;8.125014',
'50.645126;8.126004',
'50.645195;8.126838',
'50.64511;8.127024',
'50.644875;8.1275425',
'50.644142;8.127325',
'50.64152;8.126553',
'50.638638;8.129042',
'50.63845;8.129111',
'50.63816;8.128722',
'50.63706;8.129901',
'50.63625;8.130831',
'50.63678;8.131857',
'50.63314;8.137508',
'50.632088;8.139142',
'50.631546;8.139986',
'50.630947;8.140375',
'50.630257;8.140823',
'50.63011;8.140823',
'50.63001;8.140731',
'50.629578;8.139272',
'50.62797;8.140564',
'50.626984;8.141448',
'50.626755;8.141447',
'50.626465;8.1414',
'50.626247;8.14124',
'50.625927;8.140348',
'50.625706;8.139802',
'50.62561;8.139801',
'50.62544;8.139824',
'50.62477;8.140049',
'50.62412;8.140366',
'50.624035;8.140272',
'50.623158;8.137743',
'50.62281;8.137881',
'50.622635;8.137947',
'50.622303;8.138085',
'50.62213;8.138153',
'50.62165;8.138329',
'50.620117;8.138869',
'50.6199;8.138891',
'50.61977;8.138775',
'50.61928;8.137614',
'50.619194;8.137021',
'50.619198;8.136088',
'50.61899;8.13602',
'50.618908;8.136087',
'50.61882;8.136634',
'50.618645;8.136954',
'50.61863;8.137384',
'50.618645;8.137658',
'50.618557;8.1377945',
'50.618355;8.137861',
'50.618137;8.137656',
'50.61594;8.134975',
'50.615776;8.134773',
'50.61556;8.134517',
'50.61386;8.132446',
'50.613693;8.132242',
'50.61257;8.1308775',
'50.611996;8.129895',
'50.61057;8.126934',
'50.610004;8.12602',
'50.608456;8.127303',
'50.608036;8.127651',
'50.607395;8.1291275',
'50.60702;8.130465',
'50.60613;8.133629',
'50.605854;8.13368',
'50.605637;8.133718',
'50.604588;8.13804',
'50.604137;8.139609',
'50.60375;8.141201',
'50.603436;8.142471',
'50.603565;8.143475',
'50.603275;8.144428',
'50.602737;8.1452',
'50.602417;8.146156',
'50.602127;8.147155',
'50.60179;8.147769',
'50.60143;8.148268',
'50.601124;8.148494',
'50.600758;8.148643',
'50.60029;8.148831',
'50.6;8.148999',
'50.59946;8.149307',
'50.599403;8.149398',
'50.599403;8.149509',
'50.5994;8.150376',
'50.59958;8.151982',
'50.596554;8.152023',
'50.593693;8.152323',
'50.592335;8.151601',
'50.59193;8.151382',
'50.589474;8.150199',
'50.588802;8.14991',
'50.58848;8.149617',
'50.587723;8.148804',
'50.58764;8.149033',
'50.58573;8.147619',
'50.58547;8.147461',
'50.58522;8.147372',
'50.584045;8.147248',
'50.584057;8.14677',
'50.583275;8.146662',
'50.582924;8.146689',
'50.58198;8.146906',
'50.58187;8.146861',
'50.58151;8.14657',
'50.579964;8.145493',
'50.579823;8.14588',
'50.579216;8.145349',
'50.574203;8.142362',
'50.573956;8.142252',
'50.573505;8.141983',
'50.573097;8.141643',
'50.572777;8.141306',
'50.572876;8.140712',
'50.57222;8.140037',
'50.571465;8.139839',
'50.57068;8.139778',
'50.57027;8.139669',
'50.570103;8.140264',
'50.568645;8.139731',
'50.56815;8.139717',
'50.568024;8.139715',
'50.567905;8.139649',
'50.56757;8.139332',
'50.56741;8.139264',
'50.5666;8.139524',
'50.566425;8.139503',
'50.56638;8.139366',
'50.56622;8.138502',
'50.566044;8.13814',
'50.565884;8.137982',
'50.56575;8.137917',
'50.56569;8.137324',
'50.56548;8.136097',
'50.56434;8.136336',
'50.564026;8.134699',
'50.562344;8.135355',
'50.5618;8.133538',
'50.561623;8.133223',
'50.561016;8.133955',
'50.560722;8.133367',
'50.560535;8.133209',
'50.559563;8.132922',
'50.5589;8.132809',
'50.55793;8.132643',
'50.557755;8.132505',
'50.557755;8.132299',
'50.557926;8.131844',
'50.55797;8.131523',
'50.55798;8.131045',
'50.557964;8.130773',
'50.55786;8.13059',
'50.557453;8.130418',
'50.5574;8.130846',
'50.55727;8.1313715',
'50.5571;8.131805',
'50.556828;8.132378',
'50.556427;8.13402',
'50.556328;8.134251',
'50.5562;8.134545',
'50.55587;8.134496',
'50.55576;8.134482',
'50.55553;8.134621',
'50.554058;8.136011',
'50.55368;8.136369',
'50.55318;8.135441',
'50.55281;8.136125',
'50.552177;8.137306',
'50.55206;8.137524',
'50.55197;8.137094',
'50.551895;8.136897',
'50.551834;8.13674',
'50.55178;8.136593',
'50.5514;8.135664',
'50.550827;8.134444',
'50.55065;8.133895',
'50.55041;8.132578',
'50.550343;8.131937',
'50.55032;8.131736',
'50.549854;8.128189',
'50.549557;8.126099',
'50.549454;8.125756',
'50.549263;8.125372',
'50.54881;8.124192',
'50.54863;8.123674',
'50.548603;8.123404',
'50.54864;8.122791',
'50.54868;8.122287',
'50.548717;8.120474',
'50.548702;8.1200285',
'50.548485;8.118895',
'50.548397;8.118758',
'50.54826;8.118736',
'50.54706;8.118882',
'50.54671;8.118866',
'50.546577;8.118709',
'50.54538;8.116758',
'50.54525;8.116354',
'50.545177;8.116035',
'50.54507;8.115057',
'50.54499;8.11335',
'50.544918;8.113239',
'50.544147;8.112745',
'50.544006;8.112614',
'50.543865;8.112472',
'50.54374;8.112226',
'50.543488;8.111385',
'50.543385;8.111114',
'50.54321;8.110932',
'50.543007;8.110843',
'50.54273;8.110778',
'50.542267;8.110851',
'50.54206;8.11083',
'50.541916;8.110649',
'50.54158;8.110107',
'50.541348;8.109927',
'50.54088;8.110076',
'50.540405;8.110365',
'50.54006;8.110578',
'50.53977;8.110783',
'50.539597;8.111037',
'50.53936;8.111502',
'50.53928;8.111723',
'50.539165;8.112292',
'50.538853;8.113458',
'50.53847;8.115852',
'50.53846;8.116648',
'50.53849;8.11708',
'50.53861;8.117489',
'50.538727;8.117784',
'50.539047;8.118373',
'50.539326;8.118826',
'50.539616;8.119186',
'50.539555;8.121259',
'50.539337;8.12117',
'50.5367;8.119374',
'50.53547;8.118601',
'50.535202;8.118387',
'50.53568;8.117565',
'50.535892;8.117144',
'50.536324;8.116306',
'50.535934;8.116172',
'50.535744;8.115856',
'50.535854;8.114465',
'50.535877;8.113715',
'50.535805;8.113532',
'50.535442;8.113786',
'50.535397;8.113536',
'50.535336;8.112854',
'50.5348;8.109947',
'50.53439;8.108174',
'50.534283;8.107795',
'50.53418;8.107424',
'50.534092;8.106993',
'50.534103;8.106358',
'50.534046;8.106082',
'50.533943;8.1059475',
'50.534145;8.105559',
'50.534172;8.105352',
'50.534153;8.105279',
'50.534126;8.105172',
'50.533997;8.105036',
'50.53381;8.10497',
'50.533283;8.104656',
'50.533092;8.104361',
'50.532787;8.103613',
'50.53258;8.102999',
'50.533234;8.102597',
'50.533737;8.10226',
'50.534286;8.102027',
'50.534508;8.10198',
'50.53456;8.101842',
'50.534576;8.101479',
'50.534706;8.101158',
'50.53472;8.099999',
'50.53473;8.099678',
'50.534668;8.099223',
'50.53452;8.098611',
'50.53456;8.098519',
'50.534866;8.098471',
'50.535027;8.098378',
'50.535114;8.098218',
'50.535156;8.097944',
'50.535122;8.096761',
'50.535133;8.096077',
'50.535343;8.094754',
'50.535576;8.094227',
'50.536396;8.092787',
'50.536438;8.092559',
'50.536423;8.092468',
'50.536144;8.09181',
'50.53603;8.091605',
'50.53559;8.091473',
'50.535446;8.091384',
'50.53539;8.091294',
'50.535416;8.090703',
'50.535515;8.090587',
'50.53569;8.090471',
'50.536106;8.090309',
'50.536224;8.090215',
'50.536396;8.089941',
'50.536743;8.08923',
'50.538097;8.0876',
'50.53833;8.087462',
'50.53849;8.087323',
'50.538517;8.087119',
'50.538513;8.084434',
'50.538513;8.082747',
'50.53846;8.080516',
'50.538433;8.079292',
'50.53863;8.078932',
'50.53874;8.078703',
'50.53883;8.078487',
'50.539127;8.077141',
'50.5392;8.076616',
'50.53918;8.07582',
'50.53907;8.074317',
'50.53904;8.074089',
'50.53897;8.073562',
'50.53886;8.072749',
'50.538742;8.072046',
'50.538258;8.070844',
'50.537907;8.070278',
'50.538387;8.070182',
'50.539417;8.070104',
'50.540314;8.069753',
'50.54069;8.069727',
'50.540905;8.06974',
'50.54126;8.069766',
'50.541924;8.06969',
'50.542866;8.069385',
'50.543274;8.069268',
'50.545826;8.069334',
'50.545887;8.068993',
'50.54612;8.06778',
'50.546223;8.0676',
'50.54731;8.066928',
'50.547554;8.066878',
'50.54812;8.066917',
'50.548367;8.066868',
'50.548714;8.066593',
'50.548874;8.066387',
'50.548916;8.066136',
'50.549118;8.065587',
'50.549187;8.065518',
'50.549244;8.065358',
'50.549286;8.0648575',
'50.548965;8.064747',
'50.548965;8.06445',
'50.549168;8.063766',
'50.54931;8.063421',
'50.54935;8.062965',
'50.549335;8.0627165',
'50.54974;8.062257',
'50.549885;8.061712',
'50.549942;8.061097',
'50.549923;8.060435',
'50.54996;8.059569',
'50.55013;8.058929',
'50.550247;8.058474',
'50.550358;8.057903',
'50.551243;8.057281',
'50.55105;8.05621',
'50.551163;8.056027',
'50.55121;8.055822',
'50.55122;8.055413',
'50.551914;8.055223',
'50.55162;8.054156',
'50.55262;8.053713',
'50.55257;8.052166',
'50.552593;8.050733',
'50.55266;8.049889',
'50.552773;8.049273',
'50.552948;8.048793',
'50.553158;8.048316',
'50.55339;8.047786',
'50.55355;8.047671',
'50.553856;8.0476',
'50.55432;8.047663',
'50.55462;8.047554',
'50.555016;8.047292',
'50.555653;8.047013',
'50.556145;8.046393',
'50.556213;8.046259',
'50.556873;8.046231',
'50.556946;8.046138',
'50.557034;8.043587',
'50.557037;8.041447',
'50.556606;8.041635',
'50.55505;8.04231',
'50.55493;8.041988',
'50.553665;8.042969',
'50.55353;8.043073',
'50.552273;8.040579',
'50.552067;8.039876',
'50.551933;8.039248',
'50.551712;8.038197',
'50.551514;8.036878',
'50.551437;8.035512',
'50.55145;8.034987',
'50.551865;8.03396',
'50.551823;8.033846',
'50.55156;8.033643',
'50.5514;8.033395',
'50.55134;8.033247',
'50.551224;8.032963',
'50.551105;8.032486',
'50.550983;8.031715',
'50.550743;8.029394',
'50.550533;8.028145',
'50.549953;8.028583',
'50.549767;8.028881',
'50.549637;8.029268',
'50.54951;8.029497',
'50.548927;8.029231',
'50.548115;8.029147',
'50.547882;8.028717',
'50.547543;8.028291',
'50.547165;8.028063',
'50.54673;8.027977',
'50.54641;8.027985',
'50.546135;8.028074',
'50.545704;8.028355',
'50.54527;8.028519',
'50.545048;8.028497',
'50.54463;8.028271',
'50.544292;8.027981',
'50.543957;8.027549',
'50.54378;8.027374',
'50.54332;8.026535',
'50.543243;8.026397',
'50.542786;8.0256195',
'50.5427;8.025478',
'50.542435;8.025024',
'50.542175;8.024589',
'50.54189;8.025002',
'50.541782;8.024907',
'50.54161;8.024752',
'50.54144;8.024678',
'50.541306;8.02462',
'50.54103;8.024371',
'50.54065;8.024009',
'50.540707;8.023463',
'50.53846;8.020958',
'50.538185;8.020572',
'50.53806;8.020397',
'50.537754;8.019963',
'50.53681;8.018791',
'50.536663;8.018496',
'50.53692;8.0174',
'50.53558;8.015797',
'50.535435;8.015567',
'50.535183;8.015163',
'50.534718;8.014576',
'50.533348;8.013815',
'50.532307;8.014827',
'50.532272;8.014657',
'50.53219;8.014239',
'50.532112;8.013508',
'50.531895;8.012987',
'50.531586;8.012536',
'50.530563;8.011225',
'50.53042;8.010999',
'50.53042;8.010907',
'50.530586;8.00995',
'50.53053;8.009906',
'50.52937;8.009061',
'50.52954;8.008333',
'50.52968;8.007776',
'50.53039;8.004874',
'50.529793;8.003969',
'50.52925;8.003361',
'50.528614;8.002979',
'50.528076;8.002803',
'50.52744;8.000138',
'50.52741;7.999999',
'50.527187;7.9990783',
'50.52552;7.9973702',
'50.525326;7.997144',
'50.524746;7.9964776',
'50.524303;7.9959664',
'50.52374;7.9953785',
'50.523438;7.9951296',
'50.523205;7.994836',
'50.52277;7.994039',
'50.522655;7.993835',
'50.522076;7.992772',
'50.52067;7.9945087',
'50.520267;7.9950047',
'50.519485;7.9957814',
'50.519226;7.995897',
'50.51832;7.992401',
'50.516815;7.991756',
'50.515583;7.991185',
'50.514595;7.9910083',
'50.514507;7.9908276',
'50.514393;7.9907136',
'50.51419;7.9906235',
'50.513554;7.9902177',
'50.51338;7.9900274',
'50.513176;7.9898143',
'50.512947;7.9894476',
'50.51248;7.9885435',
'50.512165;7.98745',
'50.511784;7.986018',
'50.511612;7.985361',
'50.51163;7.9851394',
'50.51171;7.9846344',
'50.511784;7.9838166',
'50.511494;7.9831586',
'50.51138;7.9830227',
'50.5108;7.9832554',
'50.510452;7.9834366',
'50.51024;7.9836445',
'50.509804;7.9843025',
'50.509586;7.9845343',
'50.509197;7.9846454',
'50.50875;7.984651',
'50.508186;7.984494',
'50.50794;7.984515',
'50.504543;7.9856',
'50.504185;7.9856734',
'50.503925;7.9856734',
'50.503464;7.985813',
'50.501366;7.986914',
'50.500774;7.987348',
'50.500526;7.987599',
'50.5;7.988048',
'50.49991;7.988125',
'50.499634;7.988422',
'50.49933;7.988834',
'50.498783;7.9897676',
'50.498543;7.990009',
'50.498276;7.990154',
'50.498135;7.9897866',
'50.49801;7.9894967',
'50.497868;7.9892106',
'50.496887;7.987383',
'50.49692;7.98707',
'50.49663;7.986122',
'50.496426;7.985216',
'50.49623;7.985133',
'50.49611;7.985082',
'50.495876;7.9841323',
'50.49572;7.9836645',
'50.49553;7.983093',
'50.495354;7.981916',
'50.495296;7.980559',
'50.495064;7.9789762',
'50.49483;7.9793854',
'50.49454;7.980018',
'50.494255;7.980879',
'50.494053;7.981151',
'50.493793;7.981151',
'50.49366;7.981086',
'50.49353;7.981018',
'50.492172;7.980339',
'50.491825;7.980295',
'50.49162;7.980295',
'50.491478;7.980704',
'50.49087;7.980886',
'50.49032;7.980933',
'50.489655;7.980029',
'50.48847;7.9790363',
'50.48783;7.9785852',
'50.48589;7.979495',
'50.485542;7.979401',
'50.485226;7.979899',
'50.484444;7.979268',
'50.482567;7.981987',
'50.482624;7.983391',
'50.482365;7.9834814',
'50.482338;7.9857435',
'50.481617;7.9861064',
'50.48043;7.9862003',
'50.479706;7.9861574',
'50.479794;7.987513',
'50.47957;7.987574',
'50.479446;7.987606',
'50.479218;7.987742',
'50.4791;7.987742',
'50.478783;7.987474',
'50.478607;7.98738',
'50.478203;7.98743',
'50.47803;7.987382',
'50.477943;7.9870243',
'50.477596;7.986659',
'50.477276;7.986523',
'50.477135;7.9861655',
'50.47658;7.985804',
'50.47499;7.9861674',
'50.474876;7.986352',
'50.47499;7.9868913',
'50.475292;7.988004',
'50.47537;7.988294',
'50.475212;7.9887137',
'50.475166;7.9888387',
'50.474472;7.987797',
'50.47413;7.98744',
'50.47349;7.98744',
'50.472797;7.987668',
'50.47228;7.987987',
'50.472076;7.989027',
'50.47176;7.9900246',
'50.471703;7.9917903',
'50.47159;7.9925585',
'50.471214;7.993555',
'50.47026;7.994823',
'50.46974;7.995142',
'50.46919;7.995189',
'50.468525;7.994782',
'50.468235;7.994376',
'50.467644;7.995385',
'50.465836;7.9984536',
'50.46555;7.9988613',
'50.464516;7.9989815',
'50.463924;7.9992795',
'50.46311;7.999873',
'50.46302;7.999998',
'50.462593;8.000579',
'50.462334;8.001261',
'50.462162;8.001266',
'50.46199;8.002511',
'50.461845;8.003785',
'50.461662;8.004806',
'50.461346;8.006031',
'50.461174;8.006609',
'50.46077;8.007964',
'50.460613;8.008894',
'50.46057;8.009984',
'50.460487;8.010529',
'50.46041;8.010573',
'50.460327;8.010621',
'50.459713;8.010202',
'50.45937;8.009968',
'50.458443;8.009633',
'50.457977;8.009546',
'50.457603;8.009818',
'50.453964;8.010558',
'50.45278;8.010797',
'50.45262;8.010797',
'50.45229;8.010253',
'50.451897;8.009143',
'50.451283;8.007899',
'50.45095;8.00756',
'50.450645;8.007516',
'50.45027;8.007722',
'50.44978;8.007679',
'50.44924;8.007707',
'50.448795;8.007924',
'50.448635;8.008003',
'50.448322;8.00465',
'50.448;8.002814',
'50.447662;8.000228',
'50.44626;8.000032',
'50.445263;8.000922',
'50.44522;8.000356',
'50.445206;7.999995',
'50.44516;7.9989038',
'50.444878;7.996728',
'50.44466;7.995014',
'50.444374;7.995017',
'50.443905;7.990676',
'50.443966;7.990448',
'50.44292;7.989231',
'50.4424;7.989593',
'50.442123;7.989543',
'50.44176;7.989176',
'50.44133;7.988975',
'50.440807;7.988909',
'50.439518;7.989292',
'50.43952;7.9891753',
'50.439537;7.988615',
'50.439487;7.9880323',
'50.43945;7.9875994',
'50.439114;7.9855165',
'50.43903;7.9855103',
'50.438812;7.9854946',
'50.43855;7.9836617',
'50.438374;7.981851',
'50.438263;7.980316',
'50.438187;7.9792266',
'50.438313;7.9791327',
'50.4384;7.9790683',
'50.43801;7.977235',
'50.437733;7.976217',
'50.437447;7.975561',
'50.437214;7.975448',
'50.435913;7.975336',
'50.43564;7.975406',
'50.43539;7.975882',
'50.434944;7.976946',
'50.434265;7.9782367',
'50.434364;7.9783587',
'50.435265;7.9794335',
'50.435596;7.979976',
'50.43596;7.981357',
'50.436104;7.982443',
'50.436047;7.983688',
'50.435772;7.9855666',
'50.435673;7.985583',
'50.435486;7.9856124',
'50.435383;7.988193',
'50.435287;7.988252',
'50.43383;7.989159',
'50.433704;7.9876533',
'50.433502;7.9870186',
'50.433506;7.9867306',
'50.43353;7.9856157',
'50.43348;7.9850936',
'50.432938;7.9844637',
'50.432487;7.984101',
'50.432243;7.9840336',
'50.4318;7.984191',
'50.431664;7.9846015',
'50.431404;7.9848056',
'50.4311;7.9855976',
'50.43059;7.9864345',
'50.430305;7.9868193',
'50.429783;7.9873414',
'50.429276;7.987636',
'50.428585;7.987841',
'50.42838;7.987863',
'50.428135;7.9878883',
'50.427673;7.9877753',
'50.427326;7.9873905',
'50.42718;7.9871645',
'50.426804;7.9868474',
'50.426296;7.9863286',
'50.426376;7.9859047',
'50.4264;7.9857855',
'50.42638;7.9857354',
'50.42621;7.9852195',
'50.42599;7.984314',
'50.425846;7.9840207',
'50.425613;7.9837728',
'50.425198;7.983684',
'50.424225;7.983684',
'50.42408;7.983703',
'50.423798;7.983739',
'50.42369;7.9837527',
'50.42307;7.9843426',
'50.422977;7.983966',
'50.422836;7.983375',
'50.42265;7.983007',
'50.422573;7.982908',
'50.422504;7.9828568',
'50.422474;7.982782',
'50.42178;7.982229',
'50.421112;7.9818144',
'50.420506;7.9817443',
'50.418854;7.9817243',
'50.418232;7.981653',
'50.417416;7.9801793',
'50.41612;7.977833',
'50.415768;7.977788',
'50.414436;7.9756613',
'50.413857;7.9745755',
'50.413494;7.9729466',
'50.413567;7.971861',
'50.41348;7.971047',
'50.41316;7.970277',
'50.412914;7.969758',
'50.4129;7.968942',
'50.412926;7.9677424',
'50.413013;7.9664063',
'50.4132;7.9660897',
'50.413445;7.9651074',
'50.413475;7.964985',
'50.413105;7.964689',
'50.412956;7.9645658',
'50.412838;7.964471',
'50.412014;7.9638057',
'50.411594;7.964215',
'50.40948;7.9647617',
'50.409363;7.965872',
'50.409164;7.9677253',
'50.408905;7.9677415',
'50.4084;7.9677753',
'50.408356;7.969655',
'50.407402;7.969993',
'50.40696;7.970335',
'50.406654;7.970675',
'50.406548;7.970968',
'50.40649;7.9711056',
'50.406437;7.9720335',
'50.40651;7.9739113',
'50.40667;7.976556',
'50.406715;7.9776697',
'50.406612;7.978757',
'50.407093;7.9792986',
'50.408092;7.981377',
'50.408558;7.982283',
'50.408543;7.9825773',
'50.407124;7.983191',
'50.406345;7.983645',
'50.40517;7.984575',
'50.405376;7.9851627',
'50.40536;7.9854345',
'50.40487;7.9863176',
'50.403236;7.9877224',
'50.402077;7.9886303',
'50.401806;7.9884944',
'50.40117;7.988994',
'50.40091;7.989696',
'50.399998;7.9885383',
'50.39975;7.98852',
'50.399605;7.988046',
'50.399548;7.9874797',
'50.399605;7.9870725',
'50.39934;7.9860325',
'50.39898;7.9854217',
'50.398735;7.984446',
'50.39837;7.983343',
'50.398197;7.983909',
'50.397785;7.985497',
'50.397728;7.9858356',
'50.397717;7.9861755',
'50.397907;7.98685',
'50.398083;7.9876375',
'50.398396;7.9892154',
'50.398796;7.98945',
'50.39949;7.9896083',
'50.39958;7.990333',
'50.399387;7.9916596',
'50.398758;7.99576',
'50.398586;7.996554',
'50.398518;7.997255',
'50.39854;7.9991846',
'50.398533;8.001535',
'50.39855;8.002189',
'50.39861;8.002504',
'50.398983;8.002631',
'50.399075;8.00572',
'50.399452;8.005923',
'50.39965;8.004331',
'50.4001;8.004398',
'50.40036;8.004646',
'50.400444;8.005018',
'50.400436;8.005507',
'50.399616;8.007872',
'50.39993;8.008218',
'50.399433;8.0099125',
'50.3992;8.010859',
'50.39905;8.011781',
'50.399223;8.012519',
'50.399754;8.013325',
'50.40099;8.013701',
'50.400745;8.014879',
'50.400677;8.017015',
'50.400665;8.01824',
'50.400707;8.018739',
'50.400784;8.019035',
'50.400913;8.019239',
'50.40084;8.020645',
'50.40082;8.023847',
'50.40062;8.023553',
'50.400185;8.023146',
'50.399895;8.022988',
'50.398632;8.022678',
'50.39848;8.022434',
'50.398273;8.02133',
'50.398228;8.02115',
'50.398155;8.02106',
'50.398;8.021083',
'50.397854;8.021242',
'50.39762;8.021325',
'50.39628;8.020781',
'50.396034;8.020736',
'50.394245;8.021294',
'50.393738;8.021318',
'50.391243;8.020886',
'50.389828;8.021033',
'50.389164;8.020789',
'50.387604;8.020304',
'50.38714;8.020241',
'50.386604;8.020313',
'50.38621;8.020293',
'50.386154;8.019589',
'50.386066;8.019183',
'50.38557;8.017808',
'50.38525;8.017133',
'50.384903;8.016502',
'50.384815;8.0162325',
'50.384697;8.015307',
'50.38471;8.013973',
'50.38464;8.013822',
'50.38446;8.013863',
'50.38423;8.014543',
'50.383804;8.016037',
'50.383606;8.016467',
'50.383144;8.017036',
'50.3829;8.017468',
'50.3828;8.017762',
'50.38228;8.02233',
'50.38225;8.023144',
'50.382298;8.024387',
'50.382366;8.027436',
'50.382805;8.029963',
'50.381435;8.030744',
'50.381363;8.030856',
'50.381336;8.03106',
'50.38135;8.031308',
'50.38147;8.032053',
'50.381603;8.03368',
'50.381763;8.034853',
'50.382187;8.037006',
'50.382225;8.03733',
'50.382267;8.037512',
'50.382507;8.037435',
'50.382744;8.037413',
'50.383015;8.037429',
'50.38333;8.037516',
'50.383533;8.037607',
'50.383713;8.037639',
'50.384056;8.037558',
'50.38426;8.037524',
'50.384567;8.037822',
'50.38458;8.040005',
'50.385876;8.039362',
'50.385857;8.04279',
'50.379627;8.045445',
'50.37921;8.045699',
'50.379025;8.046036',
'50.37864;8.047056',
'50.37859;8.047595',
'50.3786;8.047964',
'50.378395;8.048523',
'50.378326;8.048711',
'50.3774;8.04788',
'50.377224;8.047632',
'50.377144;8.047366',
'50.37702;8.047118',
'50.376804;8.046753',
'50.37563;8.045045',
'50.375427;8.045182',
'50.375027;8.045763',
'50.375126;8.04652',
'50.37515;8.046952',
'50.375195;8.047402',
'50.37531;8.047842',
'50.375538;8.048322',
'50.37586;8.048683',
'50.37704;8.049483',
'50.377457;8.0497055',
'50.377865;8.05',
'50.3794;8.050689',
'50.37873;8.053814',
'50.378326;8.053566',
'50.378094;8.053341',
'50.377327;8.052173',
'50.37686;8.051413',
'50.376644;8.051115',
'50.376064;8.050513',
'50.373505;8.05668',
'50.373287;8.057268',
'50.37323;8.057607',
'50.37322;8.058083',
'50.37326;8.0585985',
'50.373737;8.058667',
'50.374245;8.058797',
'50.374763;8.058997',
'50.375053;8.0591755',
'50.375523;8.059531',
'50.37087;8.062459',
'50.368904;8.063732',
'50.367764;8.064473',
'50.367638;8.064678',
'50.36741;8.065402',
'50.36722;8.065878',
'50.366997;8.066209',
'50.36659;8.066696',
'50.366776;8.067237',
'50.365685;8.068082',
'50.36525;8.067454',
'50.364494;8.066532',
'50.36438;8.066443',
'50.364178;8.066445',
'50.36064;8.067353',
'50.36048;8.066429',
'50.358997;8.066596',
'50.358845;8.064815',
'50.35874;8.064273',
'50.358356;8.064885',
'50.35811;8.065045',
'50.35745;8.0651865',
'50.358173;8.069948',
'50.355717;8.0704365',
'50.355522;8.070116',
'50.353653;8.071496',
'50.354076;8.073032',
'50.35256;8.073763',
'50.3523;8.074011',
'50.351982;8.074263',
'50.35135;8.074628',
'50.34988;8.0751505',
'50.34987;8.075565',
'50.348248;8.0764065',
'50.34801;8.076558',
'50.34785;8.0767355',
'50.34773;8.075787',
'50.34519;8.075557',
'50.34506;8.0759',
'50.344727;8.0759',
'50.344284;8.076782',
'50.343346;8.075619',
'50.342754;8.076885',
'50.34226;8.076416',
'50.34206;8.07696',
'50.34147;8.076222',
'50.340622;8.077269',
'50.340405;8.07745',
'50.34019;8.077474',
'50.33899;8.077369',
'50.33883;8.07631',
'50.337143;8.076751',
'50.33705;8.076233',
'50.335827;8.076852',
'50.33565;8.076222',
'50.335175;8.074804',
'50.33481;8.07399',
'50.334232;8.073949',
'50.334156;8.072459',
'50.333317;8.072443',
'50.333286;8.071675',
'50.332977;8.071724',
'50.33286;8.071657',
'50.332577;8.071241',
'50.332447;8.072125',
'50.332474;8.0722475',
'50.332348;8.072091',
'50.332153;8.071978',
'50.332073;8.071887',
'50.331844;8.071621',
'50.331783;8.071482',
'50.33176;8.07143',
'50.33179;8.071327',
'50.33172;8.071101',
'50.33163;8.070989',
'50.33149;8.071034',
'50.331387;8.071263',
'50.331352;8.071535',
'50.331192;8.073795',
'50.330326;8.073712',
'50.329937;8.07376',
'50.33022;8.07622',
'50.33029;8.076466',
'50.330482;8.076848',
'50.330566;8.077186',
'50.330723;8.078383',
'50.33077;8.078925',
'50.331074;8.0795555',
'50.33119;8.080029',
'50.33125;8.080615',
'50.331207;8.081227',
'50.330837;8.083195',
'50.330563;8.083266',
'50.33045;8.083898',
'50.330338;8.084351',
'50.330177;8.084738',
'50.330193;8.085189',
'50.33015;8.085664',
'50.329937;8.086185',
'50.329636;8.086821',
'50.32952;8.08725',
'50.329407;8.087975',
'50.329338;8.088721',
'50.329353;8.089533',
'50.329445;8.090029',
'50.33023;8.092576',
'50.330566;8.093953',
'50.33055;8.094201',
'50.330338;8.094406',
'50.330177;8.094452',
'50.329945;8.094386',
'50.32937;8.09403',
'50.3284;8.093584',
'50.328167;8.093587',
'50.32788;8.093681',
'50.327766;8.094404',
'50.32771;8.094968',
'50.327724;8.095307',
'50.327843;8.09569',
'50.327454;8.09558',
'50.327717;8.096573',
'50.32665;8.097123',
'50.327057;8.098951',
'50.32687;8.099044',
'50.326942;8.099608',
'50.3267;8.099609',
'50.327003;8.100872',
'50.32705;8.101616',
'50.32707;8.102814',
'50.32542;8.102692',
'50.325394;8.103191',
'50.32499;8.103033',
'50.32431;8.102678',
'50.32369;8.102571',
'50.32343;8.10264',
'50.32302;8.106077',
'50.321625;8.106562',
'50.321552;8.106653',
'50.321423;8.107173',
'50.31944;8.106556',
'50.31951;8.105988',
'50.31775;8.105414',
'50.31749;8.106138',
'50.315536;8.105249',
'50.315426;8.105928',
'50.31454;8.105392',
'50.314415;8.105551',
'50.314125;8.105329',
'50.309845;8.102448',
'50.30969;8.102859',
'50.30946;8.10374',
'50.309174;8.104534',
'50.30783;8.103866',
'50.30715;8.104143',
'50.306923;8.104552',
'50.30645;8.105934',
'50.305775;8.107723',
'50.305504;8.108358',
'50.30519;8.10931',
'50.30473;8.110284',
'50.304356;8.111011',
'50.304127;8.111555',
'50.30396;8.112167',
'50.30353;8.11338',
'50.30341;8.113365',
'50.303383;8.113477',
'50.303246;8.113521',
'50.301903;8.113777',
'50.301258;8.114021',
'50.300873;8.114143',
'50.300583;8.114194',
'50.29995;8.114263',
'50.30061;8.116686',
'50.301075;8.118021',
'50.3;8.11823',
'50.2996;8.118325',
'50.29966;8.119316',
'50.298798;8.119409',
'50.298637;8.119409',
'50.296463;8.120064',
'50.296467;8.120762',
'50.296047;8.120947',
'50.295815;8.120902',
'50.29541;8.120637',
'50.295483;8.119981',
'50.294918;8.119738',
'50.29476;8.119715',
'50.293037;8.119914',
'50.29301;8.120612',
'50.292694;8.120639',
'50.29245;8.120753',
'50.29186;8.121434',
'50.291496;8.1211',
'50.291096;8.122117',
'50.290867;8.122503',
'50.290447;8.12298',
'50.28905;8.120558',
'50.28797;8.121514',
'50.287483;8.122059',
'50.28697;8.122985',
'50.285065;8.121811',
'50.285236;8.121195',
'50.283195;8.119917',
'50.283043;8.119942',
'50.27905;8.1210985',
'50.277344;8.121546',
'50.276253;8.1207',
'50.27445;8.118191',
'50.27397;8.117429',
'50.27311;8.11577',
'50.272835;8.115142',
'50.2726;8.1145115',
'50.272335;8.114063',
'50.27146;8.112766',
'50.271088;8.112338',
'50.27087;8.112227',
'50.270653;8.112208',
'50.270493;8.112306',
'50.27029;8.112301',
'50.270004;8.112113',
'50.26955;8.11143',
'50.26886;8.111799',
'50.2686;8.111866',
'50.268482;8.11187',
'50.26402;8.109232',
'50.264076;8.108736',
'50.26329;8.108181',
'50.261177;8.107029',
'50.260986;8.106873',
'50.260902;8.106648',
'50.26069;8.1058655',
'50.260372;8.104716',
'50.259758;8.102961',
'50.261932;8.098001',
'50.261642;8.097574',
'50.263187;8.094017',
'50.263546;8.093289',
'50.264095;8.093713',
'50.264416;8.094026',
'50.264824;8.09454',
'50.26512;8.093297',
'50.26476;8.092894',
'50.26533;8.091872',
'50.26438;8.089921',
'50.264324;8.08925',
'50.26326;8.087497',
'50.261845;8.084625',
'50.26094;8.082897',
'50.260838;8.082424',
'50.26076;8.081546',
'50.260773;8.079517',
'50.26094;8.079536',
'50.26119;8.079646',
'50.263172;8.08107',
'50.26571;8.082735',
'50.267017;8.074668',
'50.267136;8.074443',
'50.26748;8.074122',
'50.26777;8.073961',
'50.268173;8.073823',
'50.269848;8.073398',
'50.270164;8.073395',
'50.27119;8.073768',
'50.27144;8.073721',
'50.273254;8.072437',
'50.272842;8.071337',
'50.272667;8.070731',
'50.27246;8.069626',
'50.271927;8.067129',
'50.27216;8.067014',
'50.27255;8.066576',
'50.272167;8.065202',
'50.273407;8.064131',
'50.27272;8.061613',
'50.272675;8.061162',
'50.272747;8.060846',
'50.273006;8.060303',
'50.273376;8.059418',
'50.273674;8.057092',
'50.27286;8.056761',
'50.273026;8.0554495',
'50.27307;8.054802',
'50.273247;8.054732',
'50.273796;8.054772',
'50.27394;8.054635',
'50.27405;8.054271',
'50.27412;8.053772',
'50.27406;8.053207',
'50.273987;8.05278',
'50.273846;8.052335',
'50.273697;8.051568',
'50.273457;8.049678',
'50.27395;8.04974',
'50.27241;8.045582',
'50.272144;8.044752',
'50.272205;8.044209',
'50.272312;8.043663',
'50.272327;8.043348',
'50.272285;8.043037',
'50.271667;8.040538',
'50.27158;8.040042',
'50.271576;8.039727',
'50.271664;8.039297',
'50.27169;8.038958',
'50.27166;8.038734',
'50.271484;8.038487',
'50.271297;8.038376',
'50.270992;8.036035',
'50.269638;8.036382',
'50.26944;8.036343',
'50.26929;8.036142',
'50.269104;8.035784',
'50.265995;8.035635',
'50.264812;8.036189',
'50.264427;8.034368',
'50.264355;8.033487',
'50.264164;8.033421',
'50.26374;8.0324335',
'50.263683;8.032073',
'50.26368;8.031508',
'50.263428;8.030518',
'50.263355;8.029798',
'50.262978;8.029803',
'50.26217;8.029787',
'50.262096;8.029427',
'50.262066;8.028978',
'50.262062;8.028481',
'50.26226;8.028006',
'50.262146;8.027804',
'50.261955;8.027308',
'50.26182;8.026769',
'50.26179;8.026182',
'50.26185;8.025618',
'50.260212;8.025116',
'50.259953;8.025366',
'50.258293;8.022316',
'50.25816;8.021755',
'50.25519;8.024176',
'50.253494;8.025502',
'50.254738;8.028985',
'50.25507;8.028779',
'50.25518;8.029225',
'50.255207;8.029402',
'50.255566;8.0320425',
'50.248947;8.038209',
'50.246773;8.036305',
'50.246655;8.03608',
'50.24651;8.035901',
'50.24625;8.035701',
'50.245686;8.0354595',
'50.245567;8.035505',
'50.24468;8.036958',
'50.245644;8.038954',
'50.245415;8.039566',
'50.244854;8.040384',
'50.24465;8.040025',
'50.24248;8.043498',
'50.242413;8.044154',
'50.243404;8.045725',
'50.244045;8.0470705',
'50.244102;8.047317',
'50.244164;8.047743',
'50.24418;8.048219',
'50.244446;8.049343',
'50.244354;8.049348',
'50.24283;8.048767',
'50.24151;8.048246',
'50.240757;8.048141',
'50.240627;8.048823',
'50.240326;8.049566',
'50.240147;8.049843',
'50.239986;8.050003',
'50.239815;8.050072',
'50.240047;8.05113',
'50.2393;8.051497',
'50.238895;8.051569',
'50.238388;8.051597',
'50.238087;8.051556',
'50.237198;8.053167',
'50.236423;8.054844',
'50.235954;8.056338',
'50.235622;8.057174',
'50.23526;8.056548',
'50.23427;8.058272',
'50.234123;8.0578',
'50.234035;8.057191',
'50.23377;8.056045',
'50.233578;8.055618',
'50.233273;8.05508',
'50.232952;8.054585',
'50.23262;8.054161',
'50.232418;8.054267',
'50.232185;8.054504',
'50.2321;8.054644',
'50.23162;8.053698',
'50.23098;8.052666',
'50.230354;8.051409',
'50.229828;8.050289',
'50.22913;8.049055',
'50.227978;8.047126',
'50.2282;8.047031',
'50.228252;8.046716',
'50.22767;8.045371',
'50.227592;8.04501',
'50.227562;8.044537',
'50.227703;8.044018',
'50.227787;8.0433855',
'50.22784;8.041872',
'50.226963;8.040032',
'50.226696;8.040372',
'50.22639;8.040917',
'50.225956;8.040786',
'50.22452;8.039877',
'50.224045;8.0395',
'50.22365;8.039052',
'50.22346;8.038739',
'50.22336;8.038288',
'50.223152;8.037569',
'50.22308;8.037117',
'50.223106;8.0367365',
'50.22302;8.036172',
'50.2229;8.035857',
'50.222755;8.035587',
'50.222534;8.035298',
'50.22229;8.03514',
'50.221912;8.035145',
'50.22157;8.035351',
'50.22135;8.035332',
'50.22099;8.035132',
'50.220695;8.034805',
'50.220554;8.035136',
'50.220284;8.036245',
'50.22009;8.036951',
'50.21986;8.037269',
'50.219368;8.037456',
'50.218876;8.037482',
'50.21837;8.037169',
'50.217876;8.036791',
'50.217136;8.036055',
'50.216408;8.035135',
'50.216076;8.034911',
'50.215816;8.034847',
'50.215603;8.03464',
'50.215485;8.033403',
'50.21548;8.032186',
'50.215446;8.031644',
'50.21523;8.0307',
'50.215168;8.030182',
'50.215294;8.029209',
'50.21545;8.02869',
'50.215565;8.028192',
'50.215736;8.027807',
'50.21624;8.027351',
'50.216354;8.027011',
'50.21655;8.025905',
'50.21649;8.025588',
'50.21633;8.025188',
'50.216866;8.024167',
'50.217205;8.022743',
'50.217045;8.021502',
'50.216835;8.020401',
'50.216362;8.01903',
'50.217026;8.017965',
'50.217083;8.017624',
'50.21709;8.016564',
'50.217148;8.015886',
'50.2174;8.014734',
'50.21744;8.014349',
'50.217354;8.014035',
'50.21712;8.013722',
'50.217995;8.012022',
'50.218433;8.012467',
'50.218662;8.012534',
'50.218822;8.012712',
'50.
View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment